Thema: Delphi TObjectList<> - Frage

Einzelnen Beitrag anzeigen

Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#24

AW: TObjectList<> - Frage

  Alt 16. Apr 2017, 19:25
Nochmal, die Ableitung des Typ2 von Typ1 und das Typecasting der Objektliste zu einer solchen vom Typ2 funktioniert ja; ich würde nur gern wissen, ob es eine elegantere Möglichkeit gibt und dabei mein Wissen noch erweitern.
Ja gibt es Siehe meinen letzten Post. Du musst den generischen Parameter an deine Klasse attachen und NICHT hardcoded an TObjectList . Also type TMyObjectList<T: TBaseClass> = class(TObjectList<T>) statt type TMyObjectList = class(TObjectList<TBaseClass>) .

Dann verwendest du für die Typ1/TBasisClass Listen die Deklaration var List: TMyObjectList<TBaseClass> und für die Typ2/TDerivedClass Listen entsprechend var List: TMyObjectList<TDerivedClass> . Im zweiten Falle sind dann auch alle Objekte der Liste vom Typ TDerivedClass , so dass du dir den Typecast sparen kannst.
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  Mit Zitat antworten Zitat