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

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

← →
Vint45   (2003-03-17 11:30) [0]

Здраствуйте! У меня небольшой вопросик. Я создал в Delphi 6 динамический массив:
a: array of pointer;
вопрос в следующем - надо ли при завершении программы освобождать выделенную под него память a:=nil или он схож по статическими массивами, где память освобождается автоматически?


← →
VAleksey ©   (2003-03-17 11:44) [1]

надо


← →
NAlexey ©   (2003-03-17 11:46) [2]

Не надо


← →
Vint45   (2003-03-17 12:01) [3]

И все-таки можно поподробней - за и против.


← →
Anatoly Podgoretsky ©   (2003-03-17 12:26) [4]

За и против есть в любой книге по Дельфи 5 и выше, немного есть в справке.
Что бы говорить конкретно в товоем случае, нужно видеть кусок твоего кода.


← →
Vint45   (2003-03-17 12:33) [5]

ну вот:

program aaa;
var arr: array of pointer;
begin
SetLength(arr,10);
end.

вопрос - будет ли происходить потеря памяти в этом случае?


← →
Anatoly Podgoretsky ©   (2003-03-17 12:44) [6]

Нет, если конечно pointer не указывает куда нибудь на динамически выделеннцю тобой память, в данном случае этого нет.


← →
Johnmen ©   (2003-03-17 12:51) [7]

Да, будет.


← →
Anatoly Podgoretsky ©   (2003-03-17 12:57) [8]

Johnmen © (17.03.03 12:51)
Не будет это автоматически управляемый объект, память будет автоматически освобождена при выходе из области видимости.


← →
Vint45   (2003-03-17 12:59) [9]

Нет, память под поинтеры я не выделяю. Но вот я щас посмотрел скомпилированный текст через дизассемблер. И в нем не видно вызова функции освобождения памяти. А если добавить после SetLength();
arr:=nil;
то вызов функции виден.


← →
Johnmen ©   (2003-03-17 13:08) [10]

Vint45 (17.03.03 12:59)

О чем и речь...:)


← →
Anatoly Podgoretsky ©   (2003-03-17 13:09) [11]

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


← →
icWasya ©   (2003-03-17 13:31) [12]

по поводу объявления переменных в модуле проекта
http://www.delphikingdom.com/stones/stone_42.htm



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

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



Память: 0.47 MB
Время: 0.013 c
7-88258
Evg12
2003-01-30 17:37
2003.03.27
Подскажите как прочно захватить LPT порт под свое приложение


14-88135
alexteam
2003-03-11 12:59
2003.03.27
БК (просьба для модераторов, и не только)


3-87808
AM
2003-03-06 12:26
2003.03.27
Подклучение к БД только с 3-4-ой попытки


6-88101
alexteam
2003-02-01 01:05
2003.03.27
говорят если грохнуть 80 порт то инет должен упасть независимо от


4-88311
Ergoist
2003-01-30 05:01
2003.03.27
Заголовок формы+координаты мыши




   Наверх