Einzelnen Beitrag anzeigen

Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#6

Re: Speicherbereinigung von Strings

  Alt 15. Jul 2007, 18:18
Hallo,

ein einfacher TypeCast auf Pointer dürfte nicht ausreichen, damit unterläuft man die Referenzzählung. Zum Speichern und späteren Auslesen der Strings über Pointer kann man wie folgt vorgehen:

Delphi-Quellcode:
var
  List : TList;
  i : Integer;
  ps : PString;
begin
  List := TList.Create;

  for i := 0 to 9 do
    begin
      New (ps);
      ps^ := IntToStr(i);
      List.Add(ps);
    end;

  {...}

  for i := 0 to 9 do
    begin
      ps := PString(List[i]);
      ShowMessage (ps^);
    end;

  for i := 0 to 9 do
    Dispose (PString(List[i]));

  List.Free;
end;
Das TList-Objekt ist natürlich nur ein Platzhalter für die tatsächliche Datenstruktur.

Gruß Hawkeye
  Mit Zitat antworten Zitat