Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Hazel JLI MVP
Alter: 39 Anmeldedatum: 19.07.2002 Beiträge: 1761
Medaillen: Keine
|
Verfasst am: 27.03.2004, 10:43 Titel: typeid() |
|
|
Ich hab gestern durch Zufall den Operator typeid() entdeckt. Davon hab ich vorher ja noch nie etwas gehört aber ist ganz interessant und brauchbar! Hat den schonmal jemand benutzt? Und ist er schnell oder langsam(gab noch nicht gebenchmarkt und auch keine Zeit weil ich gleich abhaue)? _________________ *click* Dabuu!?
Twitter: http://twitter.com/Ollie_R
|
|
Nach oben |
|
|
Fallen JLI MVP
Alter: 40 Anmeldedatum: 08.03.2003 Beiträge: 2860 Wohnort: Münster Medaillen: 1 (mehr...)
|
Verfasst am: 27.03.2004, 10:55 Titel: |
|
|
Ist das nicht der Operator der typen vergleichen kann ? Was genau soll das eigentlich bringen ? _________________ "I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse." |
|
Nach oben |
|
|
Kampfhund Super JLI'ler
Alter: 42 Anmeldedatum: 20.07.2002 Beiträge: 408
Medaillen: Keine
|
Verfasst am: 27.03.2004, 13:59 Titel: |
|
|
Wenn du typeid verwendest musst du afaik mit RTTI kompilieren.
Das gibt zusätzlichen aufwand. Wieviel das genau ausmacht weiß ich allerdings nicht. |
|
Nach oben |
|
|
Mazze JLI'ler
Alter: 39 Anmeldedatum: 02.01.2004 Beiträge: 145
Medaillen: Keine
|
Verfasst am: 27.03.2004, 14:19 Titel: |
|
|
Sollte eigentlich kein großer Aufwand sein, müsste nur eine Compiler einstellung sein.
Beim g++ ist es afaik by defaullt an und lässt sich mit -fno-rtti als parameter abschalten..
Was das bringt? Naja..mit hilfe von typeid kannst du zur Laufzeit herausfinden um was für einen Typ Objekt es sich handelt...z.B.
Code: |
class FooBar {
//[...] blablabal
};
[..]
FooBar f;
cout << typeid(f).name();
|
würde dann FooBar ausgeben
(obs 1:1 richtig is weis ich jetzt nicht) |
|
Nach oben |
|
|
xardias JLI Master
Alter: 38 Anmeldedatum: 28.12.2003 Beiträge: 804 Wohnort: Palo Alto, CA Medaillen: Keine
|
Verfasst am: 27.03.2004, 14:43 Titel: |
|
|
also die große heilige bibel sagt, dass typeid u.a. für dynamic_cast's gebraucht wird.
man kann damit auch typen von klassen vergleichen und auch die namen ausgeben lassen kann.
aber irgendwie hört sich das so an, als wäre das schlechter stil und man könne das meistens umgehen.
Mazzes beispiel soltle funktionieren. |
|
Nach oben |
|
|
Hazel JLI MVP
Alter: 39 Anmeldedatum: 19.07.2002 Beiträge: 1761
Medaillen: Keine
|
Verfasst am: 28.03.2004, 12:15 Titel: |
|
|
Naja, schlechter Stil kann man nicht sagen. Es ist ein Werkzeug und wenn man es richtig benutzt ist es okay. Schlechter Stil ist es, wenn man Nägel mit einer Bohrmaschine in ein Holzbrett kloppt. _________________ *click* Dabuu!?
Twitter: http://twitter.com/Ollie_R
|
|
Nach oben |
|
|
xardias JLI Master
Alter: 38 Anmeldedatum: 28.12.2003 Beiträge: 804 Wohnort: Palo Alto, CA Medaillen: Keine
|
Verfasst am: 28.03.2004, 14:58 Titel: |
|
|
Hazel hat Folgendes geschrieben: | Schlechter Stil ist es, wenn man Nägel mit einer Bohrmaschine in ein Holzbrett kloppt. |
wie jetzt.. ehrlich ? mist |
|
Nach oben |
|
|
GreveN JLI Master
Alter: 38 Anmeldedatum: 08.01.2004 Beiträge: 901 Wohnort: Sachsen - Dresden Medaillen: Keine
|
Verfasst am: 28.03.2004, 15:27 Titel: |
|
|
kannst ja'n Schlagbohrer nehmen... |
|
Nach oben |
|
|
|