Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.877 Beiträge
 
Delphi 12 Athens
 
#6

AW: Design: globale Variable vs globale statische Klasse

  Alt 17. Jul 2011, 21:52
In Delphi XE würde man dafür einen class constructor und class destructor nehmen.
In D2010 geht das auch schon.
Bei D2009 bin ich mir nicht ganz sicher (ich glaub da gab's das schon, aber es funktionierte nicht) und davor kann man es eh vergessen.

Aber praktisch kann man sowas auch über die Initialization- und Finalization-Abschitte erreichen.


Delphi-Quellcode:
  CLASS VAR XMLDoc : IXMLDocument; // Achtung: I und nicht T
PUBLIC
  CLASS PROPERTY XML: IXMLDocument READ GetXML; // eventuell auch noch sowas
, falls es öffentlich sein soll
Beim ersten Sugriff auf XMLDoc wird dieses erstellt.

Delphi-Quellcode:
if not Assigned(XMLDoc) then
   XMLDoc := TXMLDocument.Create(...);
Und durch das Interface wird es am Ende automatisch freigegeben.


Ich würde MSXML aber nicht zur Datenhaltung nutzen, sondern nur beim Speicheren/Lesen eine XML-instanz anlegen und danach wieder freigeben ... ansonsten die Daten halt in entsprechenden Variablen/Listen.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat