Erstmal Danke für deine Anmerkungen
Da ich keine Interfaces speichere und auch ganz gern auf das automatische Instanzhandling verzichten möchte, hab ich mich ganz bewußt gegen TInterfaceList entschieden.
Stattdessen speichere ich nur noch Methodenzeiger in folgender Liste bzw einer davon abgeleiteten Klasse:
Delphi-Quellcode:
TYPE
PMethod = ^TMethod;
TMethodList = Class(TObject)
PRIVATE
flist : TList;
function getMethod(Index: integer): TMethod;
procedure setMethod(Index: integer; const Value: TMethod);
PROTECTED
function getCount:integer;
function indexOf(proc:TMethod):integer;
PUBLIC
Constructor Create;
Destructor Destroy;override;
Procedure Clear;
procedure Add(const proc:TMethod);
procedure Remove(const proc:TMethod);
property Items[Index:integer]:TMethod read getMethod write setMethod;
PUBLISHED
Property Count:integer read getCount;
End;
Damit laufe ich nicht Gefahr, das mir die Liste plötzlich mein Objekt unterm Allerwertesten wegzieht