Hallo,
folgendes Problem:
Code:
type
TRot = class (TObject)
end;
type
TBlau = class (TObject)
end;
type
TGelb = class (TObject)
end;
ctype
TMain = class (Tobject)
private
procedure LoadObject<T: class>(aObject: T);
end;
procedure TMain.LoadObject<T>(aObject: T);
begin
aObject := T.Create;
end;
var
Main: TMain;
Aufruf:
Code:
var
Gelb: TGelb;
Rot: TRot;
begin
Main := TMain.Create;
Main.LoadObject<RGelb>(Gelb);
Main.LoadObject<TRot>(Rot)
end;
Danach sollte Gelb als TGelb initialisiert und Rot als TRot initialisiert worden sein. Funktioniert aber leider nicht... habe ich etwas grundlegendes falsch verstanden?
Martin