Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.01.29;
Скачать: CL | DM;

Вниз

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

 
Lkan   (2004-01-16 07:16) [0]

В процедуре исп-ся динамический массив, обязательно ли при выходе из оной делать SetLength(Massiv,0) или он сам удаляется?


 
Романов Р.В. ©   (2004-01-16 07:21) [1]

Если массив объявлен в этой процедуре, то дельфи сама позаботится об обосвобождении памяти занимаемой массивом.


 
Тимохов ©   (2004-01-16 10:55) [2]

Хочу добавить:

Если массив объявлен в этой процедуре и не был сохранен в структуре за пределами процедуры, то дельфи сама позаботится об обосвобождении памяти занимаемой массивом.


 
Семен Сорокин ©   (2004-01-16 11:01) [3]

2Lkan
а память под массив можно очищать и так: Massiv := nil;


 
ALEIIIKA ©   (2004-01-16 11:08) [4]

или так
Finalize(Massiv);


 
Lkan   (2004-01-16 12:11) [5]

спасибо за инфу


 
Piter ©   (2004-01-16 14:05) [6]

>Если массив объявлен в этой процедуре и не был сохранен в структуре за пределами процедуры

это как это? Если массив объявлен локально для этой процедуры, то по выходу из процедуры он будет автоматически уничтожен, как тип с управляемым временем жизни


 
Тимохов ©   (2004-01-16 14:07) [7]

type
ta = array of integer;
var
a: ta;
procedure p();
var
a1: ta;
begin
setlength(a1, 1);
a := a1; // фактически копия ссылки на
// массив с увеличением счетчика ссылок
// удаление массива не произойдет
end;


 
Piter ©   (2004-01-16 14:29) [8]

а-а-а, ну да, конечно.



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

Текущий архив: 2004.01.29;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.016 c
7-93708
otar
2003-11-12 17:57
2004.01.29
В windows 98 работает а с win2k нет


1-93487
Луарвик
2004-01-15 13:35
2004.01.29
Копирование файла из буфера обмена на диск


7-93725
Shaman%20O%20Mega
2003-11-13 14:48
2004.01.29
Загрузка процессора


14-93672
DimKa Nevidimka
2004-01-05 11:09
2004.01.29
И снова в бой....


3-93376
Grihan
2003-12-31 12:07
2004.01.29
TIBTable.CreateTable