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

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



Память: 0.46 MB
Время: 0.021 c
3-1085126857
Виктор
2004-05-21 12:07
2004.06.13
Запрос с горизонтальным объединением таблиц


1-1085994920
DBDEV
2004-05-31 13:15
2004.06.13
TTreeView->MultiSelect - помогите написать обработчик.


11-1075121861
sams
2004-01-26 15:57
2004.06.13
Наследование


6-1082626827
-=Rezya=-
2004-04-22 13:40
2004.06.13
WinPCap-кара божья или манна небесная.


6-1082889204
kortun
2004-04-25 14:33
2004.06.13
Где можно взять документацию по TcpServer




   Наверх