Forum: Object-Pascal / Delphi-Language
Delphi
by Khabarakh,
14. Jun 2006
Und wenn man einfach nur das unterste Byte eines Integers benötigt? Oder weiß, dass der Wert im Byte-Bereich liegt?
Der Compiler weiß ja nicht, ob es einen Informationsverlust geben wird oder er auch beabsichtigt ist. Deshalb warnt er vor diesem könnte mit einem expliziten Cast.
@stoxx: Der Unterschied ist einfach, dass dich der Compiler vor den zwei o.g. Gründen warnen will, er will dich ja...
Forum: Object-Pascal / Delphi-Language
Delphi
by Khabarakh,
14. Jun 2006
Dann eben mit einem harten Typecast wie in Dax' Beispiel.
Aber ein impliziter und ein expliziter Operator mit der gleichen Signatur wie in deinem Beispiel macht wenig Sinn.
Grundsätzlich sollte man explizite Casts immer dann einsetzen, wenn entweder ein Informationsverlust stattfinden könnte (z.B. Int zu Byte, woran sich aber Delphi nicht hält :stupid: ) oder der Cast fehlschlagen könnte (um...