Forum: Object-Pascal / Delphi-Language
Delphi
by stoxx,
26. Feb 2008
Die Geschwindigkeit :-)
http://www.delphipraxis.net/internal_redirect.php?t=98278&highlight=
ich will PChars auf den String halten, aber sicher sein, dass ich nicht ungültige PChars halte.
Falls doch mal jemand bei meinem StringExploder auf die Idee kommt, ihn länger zu haben, als die Procedure dauert :-)
Und ich jedes Kopieren oder Anlegen von Speicher vermeiden will :)
Forum: Object-Pascal / Delphi-Language
Delphi
by stoxx,
26. Feb 2008
ok .... wenn ich mir den RefCount vom String selber um eins erhöhen würde, damit Delphi am Ende der Procedure den String nicht freigibt.
(dann entsteht auch ein Speicherleck, wenn man es mal in einer Schleife testet)
Wie müsste ich den String dann sauber selber freigeben?
Und Manchmal steht der RefCount vom String in normalen Proceduren manchmal auf -1?
Forum: Object-Pascal / Delphi-Language
Delphi
by stoxx,
24. Feb 2008
hmm ... vielen Dank ... okay .. ich dachte, weil der Debugger ja manchmal anzeigt "Variable kann wegen Optimierung nicht angezeigt werden"
Wo ist die Variable dann hin, und warum kann der Debugger das manchmal nicht anzeigen da?
lg
Forum: Object-Pascal / Delphi-Language
Delphi
by stoxx,
24. Feb 2008
ja, er ist noch da, die Frage ist aber, ob er noch zufällig da ist, weil der Speicher noch nicht neu genutzt wurde, aber irgendjemand anderes ihn benutzen könnte. (anderer Thread);
Forum: Object-Pascal / Delphi-Language
Delphi
by stoxx,
24. Feb 2008
nein, kein globaler String, sonst hätte ich das ja gemacht.
Forum: Object-Pascal / Delphi-Language
Delphi
by stoxx,
24. Feb 2008
procedure TForm1.test;
var s : String;
obj : TMyClass;
P : PChar;
begin
obj := TMyClass.create;
s := '32434';
Forum: Object-Pascal / Delphi-Language
Delphi
by stoxx,
24. Feb 2008
Hallo ...
kann man sicher sein, dass ein String immer bis zum Ende einer funktion oder procedure gültig ist, oder wird der Referenzzähler schon nach der letzten Verwendung zurück gesetzt.
wenn man eine FunktionA hat, in dieser ist eine String Variable deklariert, man übergibt den String einem Object, und und dieses Object hält ein PChar auf diesen String.
Kann man sicher sein, dass der...