Registriert seit: 12. Aug 2003
Ort: Soest
4.034 Beiträge
Delphi 10.1 Berlin Enterprise
|
Re: TObject kein ordinaler Typ?
20. Jan 2010, 13:41
Zitat von Muetze1:
Zitat von Stevie:
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.
1 Byte? Was? Wo?
Integer sind 4 Bytes und die kann er nicht weiter kürzen, weil dann signifikante Stellen verloren gehen. Da würde er warnen und man müsste einen expliziten Cast machen. Implizite Casts macht er nur, wenn keine signifikante Stellen verloren gehen (wie in allen Programmiersprachen). Aber 1 Byte? Wie kommst du auf den Wert?
Probier mal folgendes:
Delphi-Quellcode:
procedure Test;
var
i, k: Integer;
begin
i := MaxInt;
k := MaxInt;
if k in [Integer(i)] then
begin
ShowMessage('Integer');
end;
k := 255;
if k in [Integer(i)] then
begin
ShowMessage('Byte');
end;
end;
|
|
Zitat
|