![]() |
TStringList lebt ewig!!
Hallo zusammen!
Ich habe ein Problem mit einer Stringlist, die als Feld folgenden records definiert ist:
Delphi-Quellcode:
Es gibt eine Routine InitializeQuestion, die Standard-Werte einsetzt und sie StringListe erzeugt:
TQuestion = record
Question: WideString; Answer: record Words: TStringList; // <- da ist sie! Number: Real; end; AnswerType: TAnswerType; Difficulty: Integer; end;
Delphi-Quellcode:
Wenn Question.AnswerType auf einen anderen Wert geändert wird, dann soll - falls die Liste nicht gebraucht wird - diese freigegeben werden.
procedure TDlgQuestion.InitializeQuestion;
begin Question.Question := ''; Question.Answer.Number := 0; Question.Answer.Words := TStringList.Create; Question.AnswerType := atSentence; Question.Difficulty := 70; end;
Delphi-Quellcode:
Soweit so klar. Aber nach dem Aufruf von
Question.AnswerType := AnswerType;
if (Question.AnswerType = atNumber) then if Assigned(Question.Answer.Words) then Question.Answer.Words.Free;
Delphi-Quellcode:
kann man die StringListe lustig weiter verwenden... Sie exisiert noch! Aber warum??? Sie sollte doch :pale:
Question.Answer.Words.Free;
Was muss ich machen? Vielen Dank bene |
Re: TStringList lebt ewig!!
Der Speicher wurde anderweitig noch nicht vergeben und daher scheint es, als würde es noch funktionieren. Sobald aber der Speicher neu belegt wird fliegt Dir das Ganze um die Ohren :shock: Nutze
![]() ...:cat:... |
Re: TStringList lebt ewig!!
FreeAndNil ist keine Methode von TStringList. Natpülich kann ich die Liste anders auf nil zeigen lassen, aber eigentlich sollte ich nach einem Aufruf von TStringList.Free einen Zugriffsfehler bei der nächten Zeile :=
Delphi-Quellcode:
bekommen. Oder?? Irgendwas ist da komisch...
StringList.Add('foo');
Danke trotzdem! Bene |
Re: TStringList lebt ewig!!
du musst ja auch FreeAndNil(deineListe) machen ;)
|
Re: TStringList lebt ewig!!
Ah so! Vielen Dank.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:15 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz