Ich habe bisher die normale TObjectList verwednet und möchte jetzt auf die Generics.TObjectList<> umsteigen. Ich habe aber Probleme damit, eine allgemeine TObjectList zu deklarieren, die verschiedene abgeleitete Generic-Klassen aufnehmen kann -- was bei der klassischen TObjectList ja trivial ist. Geht das auch mit Generics?
Code:
TA = class(TObject)
Dummy: String;
end;
TAList = class(TObjectList<TA>);
TB = class(TObject)
DummyInt: Integer;
end;
TBList = class(TObjectList<TB>);
var
Form1: TForm1;
AList : TAList;
BList : TBList;
AnyList : TObjectList<TObject>; // was müsste hier stehen?
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
AList := TAList.Create;
BList := TBList.Create;
AnyList := AList; // Compilerfehler!
AnyList := BList; // ich möchte AnyList beide Klassen zuweisen können
end;