Вниз
Скачать: 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 вся ветка

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



Память: 0.46 MB
Время: 0.012 c
1-93576
Piroman
2004-01-17 07:56
2004.01.29
Событие OnPaint глючит?


1-93565
MakNik
2004-01-15 12:23
2004.01.29
TEdit


8-93590
arcoant
2003-09-23 22:07
2004.01.29
OpenGL


3-93329
Michail Dalakov
2004-01-01 23:38
2004.01.29
DCOM


14-93635
Cerber
2004-01-07 15:05
2004.01.29
ИИ




   Наверх