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

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

 
default ©   (2004-07-29 13:19) [0]

Господа, ерундовский вопрос:
если в полях класса есть динамический массив и под него выделялась память каким-нибудь методом объекта, код генер-ый Delphi по сборке мусора сразу освободит память под динам-ий массив после смерти объекта или по окончанию работы приложения? (или потока в котором он был создан(не знаю как именно))


 
TUser ©   (2004-07-29 13:28) [1]

Вообще-то D освободит память, когда вызовешь деструктора (если, конечно, ты память выделял SetLength"ом). Но я все-таки стараюсь сам писать SetLength(Ar,0), когда массив мне больше не нужен.


 
default ©   (2004-07-29 13:33) [2]

TUser ©   (29.07.04 13:28) [1]
точно?


 
TUser ©   (2004-07-29 13:38) [3]

Компилятор Delphi это гарантирует. Примерно так же, как гарантировано освобождение памяти, занятой под локальные пеерменные. Массивы тоже когда больше не нужны - "пропадают".


 
Palladin ©   (2004-07-29 13:49) [4]

После смерти. Присмерти уменьшится счетчик дин массива. Достигнет нуля и массива тоже покинет этот бренный мир, если ты конечно его никуда не передал/возвратил... Технология таже что и с длинными строками...


 
default ©   (2004-07-29 13:51) [5]

проверил, дейст-но освоб-ся сразу
понятно изначально было что чист-ся всё подобное при выходе за область вид-сти, но всё-таки хотелось убед-ся полн-ью



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

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



Память: 0.46 MB
Время: 0.023 c
3-1089967516
Trofimov
2004-07-16 12:45
2004.08.15
Экспорт из FastReport


3-1090056519
Russko
2004-07-17 13:28
2004.08.15
Сортировка ORDER BY


4-1089021102
Storm
2004-07-05 13:51
2004.08.15
завершение процесса


3-1090238932
ligor
2004-07-19 16:08
2004.08.15
Текущая дата в IB 6.5 диалект 1


1-1091557405
AlexG
2004-08-03 22:23
2004.08.15
Момент закрытия ДБКомбоБокса




   Наверх