Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
27. Jan 2014
Und wenn nicht, dann gibt es entweder einen Bug und/oder jemand hat böswillig/mutwillig die Typprüfung umgangen.
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
23. Jan 2014
Oder das Haus ist leer und du erwischst einen Geist, (der Speicher ist frei und wurde durch nichts überschrieben)
oder das Haus wird abgerissen und man fällt in ein Loch (Speicher komplett freigegeben, oder irgendwas Anderes ist dort ... z.B. ein Stück eines Strings oder ein Integer)
oder Petra Miesepeter zieht ein (Frau und nicht lustig, also nicht ger gleiche Typ ... original war dort ein...
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
23. Jan 2014
Wenn du direkt auf einen Typ prüfen willst, dann mußt du den Typ auch direkt "vergleichen".
z.B.:
if obj.ClassType = TIrgendwas then
if obj.ClassName = 'TIrgendwas' then
if obj.ClassNameIs('TIrgendwas') then
Im Gegensatz zum IS muß man hier aber auf Assigned selber prüfen, auch wenn Emba das im ClassNameIf eigentlich hätte mit aufnehmen können.