Witam
Chyba mi ten tytuł nie wyszedł :/
W skrócie :
Mam funkcje która oddaje wynik w formie dynamicznej tablicy rekordów.
Funkcja w swym "ciele" trochę miesza więc nie chciał bym jej zbyt często odpytywać.
I problem :
W procedurze potrzebuje danych z w/w funkcji Więc ją wywołuje i ... musiał bym jakoś sklonować sam wynik tej funkcji - ale jak to zrobić nie znając jej długości, którą muszę znać by utworzyć dynamiczną tablice przetrzymującą ten wynik (jego kopie).
Coś w tym style:
type
dane = record
dane0:integer;
dane1:string;
end;
dane_ar = array of dane;
function GetData(argumenty):dane_ar;
var costam:integer;
begin
costam:= jakas_liczba_uzyskana_z_jakichs_operacji;
SetLenght(Result,costam);
for i:=0 to costam do
begin
Result[i].dane0 := jakies_dane0;
Result[i].dane1 := jakies_dane1;
end;
end;
procedure KtoraToWykorzystuje();
var
kopia : dane_ar;
begin
kopia:=GetData(argumenty); //????
// i tu robie coś na tej kopi
end;