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

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

← →
Dvorez   (2002-12-23 09:49) [0]

Господа, вопрос такой.
Существует указатель на запись следующего вида:

type
PListObject = ^TListObject;
TListObject = record
kod:string[14];
nkod:string[100];
end;


Соответственно переменная этого типа и переменная типа TList:

var
ListObject:PListObject;
ListUs:TList;


В цикле создаем динамическую переменные и вставляем их в лист:
for i:=0 to 20 do
begin
new(ListObject);
ListObject^.kod:="1";
ListObject^.nkod:="2";
ListUs.Insert(i,ListObject);
end;

Ворпрос:
Нужно ли перед завершением работы программы уничтожать эти динамические переменные (dispose(...))? И почему?


← →
AlexSV ©   (2002-12-23 11:45) [1]

>Нужно ли перед завершением работы программы уничтожать эти динамические переменные (dispose(...))?
Да.
>И почему?
Потому что TList оперирует с pointer"ами и не знает о структуре твоего record"а типа TListObject.
Соответсвенно, он освободит только указатели на записи, но не сами записи.



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

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



Память: 0.45 MB
Время: 0.012 c
14-49273
Johnny Smith
2002-12-24 12:11
2003.01.16
Давайте попинаем Борланд - благо, есть за что:


1-48970
Turonix
2003-01-06 07:55
2003.01.16
Как запустить EXE-файл из Делфи?


14-49318
McSimm
2002-12-28 12:34
2003.01.16
Поздравления


1-49049
zirus
2003-01-08 05:30
2003.01.16
автопрокрутка текста


1-49086
John
2003-01-05 01:34
2003.01.16
Log2




   Наверх