[quote="maximov"]PS: Der vollständigkeit halber, muss man hier noch auf den Ref-counter aufpassen, oder gleich eine InterfaceListe verwenden.
Zitat:
Delphi-Quellcode:
procedure TMessanger.AddObserver(const aObserver: INotifyable);
begin
FList.Add(aObserver); { TODO: _AddRef }
end;
procedure TMessanger.RemoveObserver(const aObserver: INotifyable);
begin
FList.Remove(aObserver); { TODO: _Release }
end;
Genau, deshalb ist FList auch ein IInterfaceList