Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe

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

AW: TInterfacedObject Subclass

  Alt 12. Mär 2011, 15:23
Zitat:
Was da im Create passiert, ist wahrscheinlich völlig irrelevant.
In wie fern ?
Du kennst doch die Zusammenhänge nicht wie ich mit den Daten im weiteren verlauf arbeite.
Alles was deklariert wurde wird auch im späteren verlauf verwendet.
Und funktioniert in meiner anderen Anwendung "OHNE" Dll.
Mit irrelevant meinte ich "für die Lebensdauer der Instanz irrelevant". Du erwähntest, daß die Listbox kurz nach der Erstellung wieder freigegeben wird. Wenn nicht an irgendeiner Stelle die Instanz explizit freigegeben wird, kann das eigentlich nur geschehen, wenn sämtliche Interface-Referenzen auf die Instanz (auch implizit) auf nil gesetzt werden. Also sollte solange der Variablen InstrumentList nichts anderes zugewiesen wird und diese Variable nicht aus dem Scope verschwindet auch die TSkinListBox-Instanz intakt bleiben.

Kannst du nicht einen Breakpoint in das Destroy setzen und schauen, wodurch es ausgelöst wurde?

BTW, es macht zwar bislang hier keinen Unterschied, aber man sollte doch immer inherited Create aufrufen. Man weiß ja nie, was in zukünftigen Delphi-Versionen in TObject.Create so alles noch eingebaut wird.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat