Ich verstehe eins hierbei noch nicht:
Warum ist denn die Variant-Geschichte eigentlich Implicit und nicht Explicit?
Wäre Sie es, kann ich immer noch sagen
myNullableInt := myDatabaseField.Value
oder
myNullableInt := myStrangeVariant
Ich kann allerdings nicht mehr sagen
myNullableInt := myFloatValue
Nö, implicit heißt normale Zuweisung, explicit heißt, dass man einen Hardcast nutzen muss.
Also so:
myNullableInt := Nullable<Integer>(myDatabaseField.Value);
oder
myNullableInt := Nullable<Integer>(myStrangeVariant)