Registriert seit: 19. Nov 2004
253 Beiträge
Delphi XE2 Enterprise
|
AW: Destructor notwendig bei class?
13. Jun 2012, 14:53
1. Ging es bei der Aussage nur um den Stil
2. Gibst du zwar jedes Objekt frei, dies allerdings indexbasiert. Löscht aber nicht im gleichen Zug den Index dazu aus der Liste. Dadurch sorgst du bewusst dafür, dass die Liste nicht mehr synchron, mit Elementen und darin enthalten Objekten, ist
3. Das Clear, das im Destruktor von TList aufgerufen wird, ist kein Freifahrtsschein dafür, sich nicht vernünftig um die Elemente der Liste, gerade beim Freigeben, zu kümmern
4. Wird das schon in der Vorlesung "Grundlagen der Informatik" gelehrt und ist in der Informatik allgemeingültig
Edit: Bei der TObjectList mit OwnsObjects = true, sieht die Sache im Übrigen schon anders aus, allerdings wird dort die virtuelle Methode Notify überschrieben und sorgt dort dann für jedes einzelne Element der Liste auch für die Freigabe des Objektes.
"Hey Süße,
hol mir mal was zu trinken! Du wirst schon wieder hässlich!"
Zitat eines Betrunkenen
Geändert von spaxxn (13. Jun 2012 um 15:10 Uhr)
|