Moin,
naja wo ist denn das Objekt erstellt worden? Vorgesehen war es eigentlich das dies außerhalb passiert, aber wenn die nun zurückgegeben wird, musst du es wohl in der Funktion erstellen. Allerdings gewöhne dir das lieber nicht an, weil das ist nicht gerade sauberer Stil.
Es stellt sich nämlich die Frage, wo wird das denn wieder freigegeben? Bei der ursprünglichen Version war das klar:
Delphi-Quellcode:
var
o : TObject;
begin
o := TObject.Create;
try
func(o);
// do sth.
finally
o.Free;
end;
Bei der veränderten Fassung, kannst du das nicht mehr so strikt trennen. Deshalb ist der Trick, nimm die Fassung von omata (oder?):
ExtractBetween(…, Memo.Lines);
Nebenbei, wenn der letzte Parameter ein
var-Parameter wäre, geht das glaub ich nicht, weil
TCustomMemo.Lines eine Property ist.
MfG
Fabian