![]() |
AnsiString Memory Leak in array of const
Ich benutze in einer Prozedur als Übergabeparameter ein array of const. Hier muss allerdings ein Leck sein.
Delphi-Quellcode:
procedure test(const A: array of const);
var hlp : string;
Delphi-Quellcode:
Wenn ich
...
for i := Low(A) to High(A) do begin hlp := ''; with A[i] do case VType of vtChar: hlp := string(vChar); vtExtended: str(vExtended^: 12: 2, hlp); vtInteger: hlp := format('%d', [VInteger]); vtAnsiString: hlp := String(vAnsiString); // Hier müsste der Fehler sein vtstring: hlp := (vstring^); end; end; end; ...
Delphi-Quellcode:
benutze, funktioniert es, allerdings sollen die Leerzeichen nicht abgeschnitten werden.
vtAnsiString: hlp := trim(String(vAnsiString));
Kann mir jemand auf die Sprünge helfen was hier falsch läuft? |
Re: AnsiString Memory Leak in array of const
also bei mir geht dein Code,
allerdings solltest du lieber AnsiString verwenden, vorallem wenn du Delphi2009/2010 verwendest.
Delphi-Quellcode:
vtAnsiString: hlp := AnsiString(vAnsiString);
Zitat:
Und vorallem WAS funktioniert nicht? Tut mir ja leid, aber ich kann mir bei bestem Willen nicht vorstellen was bei dir passiert. |
Re: AnsiString Memory Leak in array of const
Wer behauptet eigentlich, daß da ein Memory-Leak sein soll?
:gruebel: Sherlock |
Re: AnsiString Memory Leak in array of const
Zitat:
ups, den Titel hatte ich doch glatt wieder vergessen :oops: |
Re: AnsiString Memory Leak in array of const
Zumindest im Titel. Oder nicht? :oops:
OT zu Himitus Signatur: Zitat:
Sherlock |
Re: AnsiString Memory Leak in array of const
Sorry für die schlechte Beschreibung. Das mit dem Memory Leak war meine Vermutung.
Nochmal ergänzend, im Prinzip läuft das alles. Die Prozedur wird ausgeführt, nur beim Schließen der Form geht das CPU Fenster in der Delphi IDE auf bzw. das Programm verabschiedet sich. Wenn ich das Trim benutze funktioniert es ohne Fehler, deshalb meine Vermutung das es an der AnsiString Umwandlung liegt. Ich habe mir grade ein Testprogramm mit festen Parametern geschrieben, da funktioniert es auch ohne Trim. Also wirds wohl an den Parametern liegen |
Re: AnsiString Memory Leak in array of const
ok ... der fehler hat seinen ursprung wahrscheinlich wo ganz anders :wall: brainbug meinerseits
|
Re: AnsiString Memory Leak in array of const
Weisst Du eigentlich was ein Memoryleak ist?
Sowas führt nicht unbedingt zu Fehlern zur Laufzeit, nur wenn Speicherlecks vermehrt auftreten und auch groß sind, bekommt die Applikation irgendwann Atemnot. Ein Speicherleck findet für gewöhnlich auch nicht Delphi von alleine, sondern nur mit Hilfe von außen, FastMM zum Beispiel wäre so eine Hilfe. Aber gut, daß Du das Problem lösen konntest, der Lösungsweg würde im übrigen den Thread noch die Krone aufsetzen. :zwinker: Sherlock |
Re: AnsiString Memory Leak in array of const
OT:
Zitat:
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:52 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