Вниз
Скачать: 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
6-87595
gari
2003-01-10 12:15
2003.02.27
Доброго дня господа.


1-87543
Alexander_K
2003-02-17 10:30
2003.02.27
Работа с Excel через OLE


1-87452
_MAD_
2003-02-15 23:18
2003.02.27
постоянно активное приложение


6-87614
NewGuest
2003-01-05 18:22
2003.02.27
Есть ли у кого пример... Какие компы есть в лок. сети...


1-87544
smok_er
2003-02-15 15:47
2003.02.27
Работа c TFileStream




   Наверх