Einzelnen Beitrag anzeigen

knoby

Registriert seit: 30. Okt 2007
6 Beiträge
 
Delphi 7 Enterprise
 
#1

Array objekte destroy?

  Alt 21. Apr 2009, 23:19
Hallo


ich habe da ein Problem ich arbeite schon etwas länger mit Delphi. Auch mit eigenen Klassen, die ich ja mit create erschaffe und dann mit destroy wieder freigebe und ich habe mir angewöhnt Objekte die nicht mehr gebraucht werden sofort freizugeben.

So jetzt zu meinem Problem ich habe eine Klasse erstellt und dann ein Array mit dynamischer länge die während der laufzeit öfter geändert wird.


So wenn ich hinten was dranhänge, dann erstellle ich mit create das neue Objekt. Dann habe ich mir gedacht wenn ich das Array verkürze, gebe ich die nicht merh benötigten mit destroy wieder frei.

Delphi-Quellcode:
    
liste[listbox1.Count -1].Destroy;
setlength(liste,length(liste)-1);
(in Listbox1 und dem Array sind gleichviele Objekte)


Allerdings bekomme ich dann bei erneutem zugriff auf das array Probleme, beim zugriff auf das letzte Element. Meine frage ist jetzt wiso.

Liegt es daran, dass er mit destroy gleich das array einen kürzer macht?


schonmal danke für die Antworten


lg Knoby


oh merke grade ist ins falsche forum gerutscht ... tut mir leid ...
  Mit Zitat antworten Zitat