Einzelnen Beitrag anzeigen

VizeTE

Registriert seit: 31. Dez 2002
178 Beiträge
 
Delphi 5 Enterprise
 
#41

Re: Methode "Free" selbst implementieren (Assemble

  Alt 15. Mär 2005, 09:25
Zitat von maximov:
Willst du mit interfaces arbeiten, oder komplett ohne?
Prinzipiell habe ich nichts gegen Interfaces, aber bisher habe ich nicht die Notwendigkeit dazu erkannt.

Zitat von maximov:
Ich würd das dann so machen, dass dein objekt lediglich eine beziehung zur deiner liste hast. Beim einfügen in die liste wird im objekt ein observer registriert, sodass die die liste benachrichtigt wird, sobald sich das objekt zerstört. Wird das objekt normal aus der liste entfernt, so kann es den der observer auch wieder aus dem objekt entfernt werden.
Mit der Theorie des Observers bin ich (noch) nicht vertraut. Bisher läuft das bei mir folgendermaßen:
Das Listenelement kennt die Liste zu der es gehört. Beim löschen eines Elements aus der Liste wird eine Event aufgerufen. Wird dort festgestellt das das Listenelement zu dieser Liste gehört wird es freigegeben, sonst wird nur der Eintrag in der Liste gelöscht.
Nach meinem Verständnis klingt diese Lösung ähnlich wie der Observer. Allerdings scheint der Observer ein extra Objekt zu sein?!

Zitat von maximov:
...Alle listen haben immer ihr objekt als owner, sodass sie evtl. benachritigungen an ihn weiter geben können.
Das kapier ich noch nicht so recht. Alle Listen sollen sich selbst als Owner haben? Damit sie dem Observer sagen können was mit ihnen passiert und der Observer die Elemente freigibt? Bisher habe ich dafür gesorgt das für jedes Element das oben genannte Event zum entfernen aufgerufen wird. Child-Elemente werden somit freigegeben.
  Mit Zitat antworten Zitat