Главная страница
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.019 c
14-93692
anana][
2004-01-06 15:32
2004.01.29
Когда-то я спрашивал, как можно добавить юзера...


14-93671
Teren
2004-01-07 01:38
2004.01.29
Ctrl, Alt, Del


7-93713
Tik
2003-11-13 16:17
2004.01.29
Буфер .


9-93327
Dead Moroz
2003-07-12 02:32
2004.01.29
Delphi on PalmOS


1-93567
Nelud
2004-01-16 18:20
2004.01.29
Длинное деление