Cita:
Empezado por elcigarra
Y sabiendo que no puede hacerse esto, como entonces puedo liberar la memoria de la variable miLista creada en esa función.
|
Estas intentando devolver un objeto que destruyes en la linea posterior.
Opciones hay muchas,y no entiendo bien que queres hacer, pero como sea que lo hagas deberías destruir el objeto solo después de usarlo, es decir en el código que lo recibe. Ejemplo tosco:
Código Delphi
[-]procedure TForm1.GetStrings(var MyStrings:TStrings);
begin
MyStrings.Clear;
MyStrings.Add('uno');
MyStrings.Add('dos');
end;
procedure TForm1.Button1Click(Sender: TObject);
var
miLista: TStrings;
begin
miLista := TStringList.Create;
GetStrings(miLista)
memo1.Lines.Assign(miLista);
FreeAndNil(MiLista);
end;
Saludos