Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.024 Beiträge
 
Delphi 12 Athens
 
#4

Re: Interfaces und Listen (Observer Pattern)

  Alt 13. Feb 2009, 19:49
Bei TInterfaceList-Instanzen muss man sehr vorsichtig sein. TInterfaceList ist nämlich selbst reference counted und die Instanz (in deinem Fall das Feld) sollte vom Typ IInterfaceList sein, sonst kann es zu ganz merkwürdigen Sachen kommen.

Delphi-Quellcode:
...
private
  FObservers: IInterfaceList;
...
constructor TSubject.Create;
begin
  inherited;
  FObservers := TInterfaceList.Create;
end;
...
destructor TSubject.Destroy;
begin
  FObservers := nil; // no .Free on Interfaces!
  inherited;
end;
Uwe Raabe
  Mit Zitat antworten Zitat