Thema: Delphi Spring4D: Nullables

Einzelnen Beitrag anzeigen

Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.008 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#9

AW: Spring4D: Nullables

  Alt 13. Nov 2015, 16:23
Würdet ihr euch denn dazu überreden lassen der Value -Property dann einen Setter zu verpassen damit man, wenn man will, zur Compile-Zeit ein bisschen Typsicherheit hat?
Absolut nicht. Nullable<T> ist als immutable designed.

Überleg mal, was sonst mit solchem Code passiert:

Delphi-Quellcode:
myObj.NullableIntProp.Value := 42;
...
Da Nullable<T> ein Record ist, würdest du nämlich dann nur die lokale Kopie verändern.
siehe http://stackoverflow.com/a/9157045/587106

Wenn die Pointer-Überladung rausfällt, bekommt ein Nullable dann eine Clear() -Methode oder wie löscht man den?
Kein Clear, selbe Argumentation wie zuvor.
Delphi-Quellcode:
x := Null;
...
Außerdem könnte man sonst eine readonly nullable Eigenschaft nicht vor Modifikation schützen können.
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight

Geändert von Stevie (13. Nov 2015 um 16:47 Uhr)
  Mit Zitat antworten Zitat