Einzelnen Beitrag anzeigen

EWeiss
(Gast)

n/a Beiträge
 
#7

AW: D2009 Exception

  Alt 29. Apr 2011, 21:59
Es gibt leider keinen Garbage Collector in Delphi:
Man muss den Speicher, den man allokiert (mit new) wieder Freigeben(mit Dispose). Das nilen des Pointers reicht da nicht aus, da der Wert dahinter immer noch existiert.

Normalerweise ist sowas "nur" ein Speicherleck und sollte keine Exception werfen, aber wer weiss.
Vielleicht liegt der Fehler wo ganz anders
Also wenn ich den Buffer mit dispose freigebe dann kracht es direkt.
Warum auch immer, bekomme dann nicht mal die HauptAnwendung(Fenster geladen)

Delphi-Quellcode:
      while not eof(ParseFile) do
      begin
        ReadLN(ParseFile, sBuffer);
        AppendToLinkedList(nReading, sBuffer);
        inc(nReading);
        Dispose(FPBuffer);
      end;
wie gesagt das problem habe ich nur mit D2009

gruss
  Mit Zitat antworten Zitat