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

Вниз

Как правильно освободить память ?   Найти похожие ветки 

 
Leaner ©   (2004-05-28 11:31) [0]

Корректно ли следующее освобождение памяти ?
var
ByteArr:array of Byte;
Begin
SetLength(ByteArr,1024);
ByteArr:=nil;
end;


 
Семен Сорокин ©   (2004-05-28 11:32) [1]

да, аналог SetLength(ByteArr, 0);


 
Sandman25+1   (2004-05-28 11:33) [2]

Корректно. Но можно его и не делать.


 
Erikl   (2004-05-28 11:34) [3]

Test


 
Тимохов ©   (2004-05-28 11:35) [4]

нинамические массивы не надо удалять - они удалятся сами, об это позаботится компилятор дельфи автоматически вставив нужные команды.


 
Leaner ©   (2004-05-28 11:37) [5]

Спасибо !


 
Anatoly Podgoretsky ©   (2004-05-28 11:38) [6]

Правильно тогда когда память осбождается полность - не больше и не меньше, и при том своя а не чужая.
Для динамических массивов есть 4 пути
1. не освобождать, освободится сама когда выйдет за пределы видимости.
2. присвоить nil
3. присвоить нулевую длину
4. использовать Finalize - ни к чему.


 
lyeh ©   (2004-05-29 03:54) [7]

А если массив состоит из пойнтеров, то их надо тоже освободить


 
Palladin ©   (2004-05-29 06:09) [8]

Память взятую под указатели конечно же нужно освобождать.


 
Anatoly Podgoretsky ©   (2004-05-29 12:42) [9]

lyeh ©   (29.05.04 03:54) [7]
В зависимости от задачи


 
lyeh ©   (2004-05-31 00:36) [10]

2 Anatoly Podgoretsky ©
Согласен, я имел виду освождать массив вместе с содержимым, нигде больше не встречающимся



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

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

Наверх




Память: 0.48 MB
Время: 0.041 c
3-1085392201
Known Unknown
2004-05-24 13:50
2004.06.13
Исключения в UDF


8-1081136189
Rentgen
2004-04-05 07:36
2004.06.13
Photoshop Color Table


4-1083918898
Samgin
2004-05-07 12:34
2004.06.13
GSM-модем + SMS


6-1080720932
devil_83
2004-03-31 12:15
2004.06.13
Простой почтовый сервер


14-1085494619
YurikGl
2004-05-25 18:16
2004.06.13
Выполнено, но с ошибками на странице