Thema: FreePascal Speicher Freigeben

Einzelnen Beitrag anzeigen

stiftII

Registriert seit: 2. Sep 2009
Ort: Cuxhaven
122 Beiträge
 
#1

Speicher Freigeben

  Alt 29. Sep 2011, 13:45
Hallo,

ich habe folgende Funktion:
Delphi-Quellcode:
function ExtraColumsStringsDB(firma:string):TStringlist;
var
  Temp: Array Of TColumn;
  i: integer;
begin
     Result := TStringList.Create;
     Temp := GetExtraFields(firma);
     for i:=0 to high(Temp) do
     begin
       result.Add(Temp[i].FieldName );
     end;
end;
Aufgerufen wird diese zB so:
ExtraColumsStringsDB('name').count Allerdings ist mir aufgefallen, dass bei dieser Vorgehensweise der verwendete Speicher der Funktion niemals freigegeben werden kann. (FPC hat ja keinen Garbage Collector)

Wenn man den Speicher in der Funktion freigeben würde, könnte man den Rückgabewert (TStringlist) ja niemals benutzen.

Gibt es irgendeine Möglichkeit diese nicht mehr verwendeten Variablen nach Ausführung der Funktion wieder freizugeben ?

Grüße
stiftII
  Mit Zitat antworten Zitat