Einzelnen Beitrag anzeigen

RSE

Registriert seit: 26. Mär 2010
254 Beiträge
 
Delphi XE Enterprise
 
#4

AW: typisierte konstante verkettete Liste erweitern

  Alt 8. Mär 2011, 13:45
Mir schwant ich hab ´nen Denkfehler drin... Ob das Teil nun als Konstante oder als globale Variable deklariert ist, macht doch (in diesem Fall) keinen Unterschied:
Die Liste ist global, nun erstelle ich beim Eintritt in meine Methode (oder Prozedur, whatever) eine lokale Variable. Diese kann ich zwar problemlos in die Liste integrieren, beim Austritt aus der Methode verliert diese aber ihre Gültigkeit. Somit ist das gerade erstellte Element in der Liste nicht mehr vorhanden und ich bekomme (mit etwas Glück) eine Zugriffsverletzung, wenn ich es benutze.

Ergo: Es kann gar nicht anders gehen, als dass ich diese Liste zur Laufzeit nur als Startbelegung einer identischen Liste benutze, die ich in der Klasse zur Laufzeit anlege und warte und im Destroy auch selbst wieder komplett freigebe. Delphi gibt ja die am Anfang vorhandenen Elemente der "konstanten" Liste selbst frei, evtl. selbst hinzugefügte Elemente müsste ich grundsätzlich davon unterscheiden können, um sie auch selbst wieder freizugeben...

Manchmal hilft das Erklären des Problems doch schon, um zur Lösung zu kommen
"Seit er seinen neuen Computer hat, löst er alle seine Probleme, die er vorher nicht hatte."
  Mit Zitat antworten Zitat