Forum: Object-Pascal / Delphi-Language
Delphi
by Stevie,
20. Jan 2010
Probier mal folgendes:
procedure Test;
var
i, k: Integer;
begin
i := MaxInt;
k := MaxInt;
if k in then
begin
ShowMessage('Integer');
Forum: Object-Pascal / Delphi-Language
Delphi
by Stevie,
20. Jan 2010
Nein, das stimmt, die Ausdrücke von Himi würden eh nicht hinhauen, weil die auf Integer umgecasteten Objekt-Referenzen auf 1 Byte verkürzt würden.
Forum: Object-Pascal / Delphi-Language
Delphi
by Stevie,
20. Jan 2010
Rat mal, warum man eine Object-Referenz explizit casten muss, wenn mans z.B. in der Property Tag speichern möchte?
Richtig, weil Objekt-Referenzen nicht implizit zuweisungskompatibel zu diesem Datentyp sind (Stichwort Typensicherheit).
Daher gehen auch deine beiden oberen Beispiele, in denen du die Objekt-Referenzen explizit in Integer umcastest, aber im unteren Beispiel versucht der Compiler...
Forum: Object-Pascal / Delphi-Language
Delphi
by Stevie,
20. Jan 2010
Weil Sets nur mit ordinalen Typen funktionieren und ein Objekt kein ordinaler Typ ist.