Zitat von
Steve:
Ich weiß nicht, wie sinnvoll das ist, aber müsste es nicht z.B. folgendermaßen auch funzen?
Delphi-Quellcode:
function neueSL : TStringList;
begin
result := TStringList.Create;
result.Append('TEST');
END;
procedure TForm1.Button1Click(Sender: TObject);
VAR
SL : TStringList;
begin
SL := neueSL;
showMessage(SL.text);
SL.Free;
end;
Ja, das geht sicherlich, nur finde ich das etwas sehr unbersichtlich und man weiß nicht, ob der Aufrufer oder die Prozedur für das Aufräumen des Speichers verantwortlich ist. Das wird bei mir deutlich, das ich das Objekt übergeben muss, also muss es der Aufrufer erzeugen und ist somit auch wieder für das Freigeben verantwortlich.