Zitat:
statischen Klassenmethode
In diesem Fall ist Self in dieser Methode die Klasse selber.
Delphi-Quellcode:
type
TTestClass = class of TTest;
TTest = class
class procedure Test;
end;
TTestA = class(TTest);
procedure TTest.Test;
begin
ShowMessage(ClassName + ': '+ IntToHEX(Cardinal(Self), 8) + ': '+ IntToHEX(Cardinal(ClassType), 8));
end;
procedure Test
var
TC: TTestClass;
begin
TC := TTestA;
TC.Test;
ShowMessage(TC.ClassName + ': '+ IntToHEX(Cardinal(TC), 8) + ': '+ IntToHEX(Cardinal(TC.ClassType), 8));
end;
In beiden ShowMessages sollte Self = TC = TTestA sein.
Gruß Hagen