@
-=ZGD=-:
Gut, dann müßtest Du natürlich vorher den Inhalt des Variant-Wertes testen:
Delphi-Quellcode:
if VarIsType(Items['xxx'],varInteger)
then IntegerWert:=Items['xxx']
else IntegerWert:=IntegerDefault;
Willst Du diesen Test innerhalb Deines Objektes unterbringen, ist die Verwendung von Variant ungünstig und ich würde an Deiner Stelle auch Records nehmen.
Und warum denn bitte Variant nehmen? Die ganze Typsicherheit geht verloren und du bekommst erst zur Laufzeit Probleme, da der Compiler die Typen nicht schon beim Compilieren prüfen kann.
Dafür gibt es Tests... Und es gibt Sprachen, die bauen ausschließlich auf Variant auf (z.B. JavaScript).