Вниз
Скачать: CL | DM;

Динамические массивы внутри записи   Найти похожие ветки 

 
BOA_KAA ©   (2003-02-17 17:04) [0]

Вот такой вопрос возник
Допустим, есть такой набор типов данных:

type
TArr1 = array of TSomeType1;

Trec1 = record
A1: TArr1;
B: SomeType2;
end;

TA2 = array of Trec1;

var
A: TA2;


Для освобождения массива A понятно A:=nil

А вот освобождается ли при этом то, что находится в A.A1 или же до кучи надо A.A1:=nil;


 
han_malign ©   (2003-02-17 17:13) [1]

program dyn2;
{$APPTYPE CONSOLE}
type
TSomeType1=word;
TSomeType2=byte;
TArr1 = array of TSomeType1;

Trec1 = record
A1: TArr1;
B: TSomeType2;
end;

TA2 = array of Trec1;

var
A: TA2;
i: integer;
begin
Writeln(AllocMemSize);
SetLength(A,1001);
Writeln(AllocMemSize);
for i:=0 to 1000 do SetLength(A[i].A1,2000);
Writeln(AllocMemSize);
A:=nil;
Writeln(AllocMemSize);
end.


Результат:
0
8016
4020028
0

Делай выводы...

З.Ы. Всего две минуты на тестовое приложение...


 
BOA_KAA ©   (2003-02-17 17:15) [2]

Тады ОК! Сенькс!:-)



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.011 c
1-87448
Yrtimd
2003-02-18 18:06
2003.02.27
Проблемы с EhLib


14-87697
microsoft
2003-02-11 19:12
2003.02.27
ПОМОГИТЕ СРОЧНО. Кто нибудьзнает как сделать Code Completion


1-87446
waer
2003-02-18 17:49
2003.02.27
Bug Tracer


6-87596
Шоломицкий
2003-01-10 16:21
2003.02.27
надо сделать ОТДЕЛЬНУЮ прогу, которая будет самостоятельно


3-87248
D
2003-02-11 12:16
2003.02.27
Blob-поля




   Наверх