Я использую Delphi 10.0 Seattle.Динамический массив Delphi
Предположим, у меня есть запись, как это:
TmyRecord = record
a,b : string;
ar : array of string
end;
и переменную так:
v : array of TmyRecord;
и код вроде этого:
SetLength(v,2);
SetLength(v[0].ar,3);
SetLength(v[1].ar,2);
SetLength(v[0].ar[0],10);
SetLength(v[0].ar[1],5);
SetLength(v[0].ar[2],7);
...
v[0].ar[0][0] := 'aaaa';
v[0].ar[0][1] := 'bbbb';
....
v[1].ar[1][0] := 'xxxx';
Будет ли это утверждение:
SetLength(v,0);
освободите всю занятую память, или я должен освободить ее вручную?
Обычно (например, если 'v' является локальной переменной), я бы очистил его, ничего не делая (просто позволяя ему выпасть из области видимости). –