Zitat von
Uwe Raabe:
Delphi-Quellcode:
var
List: TObjectList<T>;
läßt sich nicht compilieren.
Und mit welcher Fehlermeldung?
Sowas läßt sich z.B. bei mir compilieren:
Delphi-Quellcode:
var
List: TObjectList<TEdit>;
Zitat von
Uwe Raabe:
Man muss sich Generics einfach als Klassen-Vorlagen vorstellen. Erst durch die Bestimmung des oder der variablen Typen wird daraus eine verwendbare herkömmliche Klasse.
Jupp, es wird praktisch beim Compilieren eine Kopie dieser Vorlage erstellt, die angegebenen Typen darin ersetzt und dann alles als eigenständiger Code kompiliert.
(es sei denn es wurde vorher schonmal eine gleichartige Typ-Kombination für diesem Generic kompiliert, dann wird diese natürlich wiederverwendet)
Dieses würde alle nötigen Codes doppelt in die Anwendung reinkompiliert ... einmal alles mit TEdit und dann nochmal alles mit TButton:
Es wäre praktisch so, als wenn man zwei Objektlisten im QuellCode "parallel" erstellt hätte.
Delphi-Quellcode:
var
ListA: TObjectList<TEdit>;
ListB: TObjectList<TButton>;