Kommt man da tatsächlich nicht weiter oder seh ich es einfach nicht?
Bitte keine guten Ratschläge zu TList/IList<T>/Spring4D und so weiter weil es sich um eine nicht diskutierbare Vorgabe handelt TList zu verwenden
Es sei ein Interface
Delphi-Quellcode:
ISimpleInterface = interface
function GetID: Integer;
procedure SetID(AValue: Integer);
property ID: Integer read GetID write SetID;
end;
und eine Liste von diesen Dingern:
Delphi-Quellcode:
TSimpleIntfList = class(TList<ISimpleInterface>)
public
function ItemByID(AiID: Integer): ISimpleInterface;
end;
Eine Erweiterung vom Interface:
Delphi-Quellcode:
IModule = interface(ISimpleInterface)
function GetModNo: Integer;
procedure SetModNo(AValue: Integer);
property ModNo: Integer read GetModNo write SetModNo;
end;
Nun hätte ich gerne eine Ableitung von TSimpleIntfList, also
Delphi-Quellcode:
TModuleList = class(TSimpleInterfaceList<IModule>) // funkt nicht - schon klar
function ModuleByModNo(AiModNo: Integer): IModule;
end;
Aber
ItemByID
sollte trotzdem noch funktionieren ...
Geht das?