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

Массивы Variant и сборка мусора   Найти похожие ветки 

← →
atruhin ©   (2004-03-29 10:57) [0]

var
 V, VV : array of variant;
begin
 SetLength(V,3);
 SetLength(VV,15);
 V[0]:=VV;
....
 V := nil;
end;
Вопрос. Необходимо ли освобождать элементы массива V отдельно или   это делается автоматически?


← →
Smithson ©   (2004-03-29 11:02) [1]

Не делается, необходимо.


← →
Alex Konshin ©   (2004-03-29 11:28) [2]

При уничтожении дин массива при выходе за пределы видимости автоматически происходит финализация элементов.


← →
atruhin ©   (2004-03-29 11:59) [3]

Уточнение к вышесказанному. V массив описан в объекте. При необходимости в процедуре 1 создаются элементы (SetLength(X)) и присваиваются элементам V. Когда массив ненужен освобождаем память Setlength(V,0). Нужно ли предварительно циклом освобождать каждый элемент отдельно?


← →
Alex Konshin ©   (2004-03-29 12:09) [4]

Нет.


← →
Alex Konshin ©   (2004-03-29 12:11) [5]

Посмотри System.DynArraySetLength и увидишь, что она вызывает _DynArrayClear, которая, в свою очередь, вызовет финализацию массива.



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

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



Память: 0.46 MB
Время: 0.026 c
11-1062341908
Кладов
2003-08-31 18:58
2004.04.18
Версия 1.84


1-1080218582
pirat
2004-03-25 15:43
2004.04.18
Как получить битмэп с "отрендеренной" (целиком) html-страницей?


1-1080551125
Insert
2004-03-29 13:05
2004.04.18
Обращение к файлу?


14-1079660616
Fktrc
2004-03-19 04:43
2004.04.18
Option Explicit в JScript


3-1079468454
Zhenja
2004-03-16 23:20
2004.04.18
Index is out of date




   Наверх