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

Вниз

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

 
vidiv ©   (2004-12-03 21:38) [0]

такой простой код:
type Tmyvar=record
 name : string;
 sizes : array of byte; // Динамический
end;

var Data: array of Tmyvar;

begin
 {!!!Контрольная точка 1!!!}
 SetLength(Data, 100);
 SetLength(Data[50].sizes, 30);

 Data[50].sizes[25] := 34;

 SetLength(Data, 0);
 {!!!Контрольная точка 2!!!}
end;

В результате выполнения кода между контрольными точками память должна освободится.
Вопрос нужно ли выполнять SetLength(Data[50].sizes, 0) в данном случае, чтобы избежать утечки памяти?


 
Alex Konshin ©   (2004-12-03 21:52) [1]

Освободится. Можешь даже не делать последнего SetLength


 
Alex Konshin ©   (2004-12-03 21:53) [2]

А, sorry, Data у тебя глобальная переменная, тогда SetLength нужен.


 
vidiv ©   (2004-12-03 21:54) [3]


> Alex Konshin ©   (03.12.04 21:53) [2]
> А, sorry, Data у тебя глобальная переменная, тогда SetLength
> нужен.

тоесть и тот что стоит и тот который я предложил вставить?


 
Alex Konshin ©   (2004-12-03 21:58) [4]

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


 
vidiv ©   (2004-12-04 00:39) [5]

спасибо :)



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

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

Наверх




Память: 0.47 MB
Время: 0.059 c
1-1101961607
klyg
2004-12-02 07:26
2004.12.19
WebBrowser1.ExecWB(OLECMDID_COPY, OLECMDEXECOPT_DONTPROMPTUSER)


14-1101583996
Verg
2004-11-27 22:33
2004.12.19
За что бывает обидно


14-1101819266
DeMoN-777
2004-11-30 15:54
2004.12.19
И снова бессонница


14-1101812533
by
2004-11-30 14:02
2004.12.19
Монархия или демократия. Когда мы пошли в разные стороны?


14-1101190656
АрияРок
2004-11-23 09:17
2004.12.19
Ария - СУПЕР!!!