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

Вниз

Освобождение памяти TList   Найти похожие ветки 

 
sohat   (2004-02-13 09:02) [0]

Метод Clear освобождает только массив ссылок на объекты, или сами объекты тоже ?
(простите за ламерский вопрос)


 
pasha_golub ©   (2004-02-13 09:03) [1]

Только ссылки, уничтожение объектов на твоей совести.


 
ЮЮ ©   (2004-02-13 09:05) [2]

Если это действительно объекты (а не record-ы, например), используй TObjectList.


 
pasha_golub ©   (2004-02-13 09:12) [3]

ЮЮ © (13.02.04 09:05) [2]

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


 
ЮЮ ©   (2004-02-13 09:30) [4]

>pasha_golub © (13.02.04 09:12) [3]
А я разве не об этом? ... если это действительно объекты, а не record


 
DarkUser ©   (2004-02-13 09:33) [5]

2 pasha_golub серьёзна???
а как-же справка???
Call Clear to empty the Items array and set the Count to 0.
Clear also frees the memory used to store the Items array and
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
sets the Capacity to 0.
или я что-та не понял???


 
Владислав ©   (2004-02-13 09:36) [6]

Clear also frees the memory used to store the Items, а не то, на что ссылается Items.


 
Тимохов ©   (2004-02-13 09:47) [7]

DarkUser © (13.02.04 09:33) [5]
Верь людям - они на этом собаку съели. РУчками очищай.


 
DarkUser ©   (2004-02-13 09:51) [8]

2 Владислав подумал... еще раз подумал... полез в исходники... посмотрел... действительно удаляется тока указатель :) надо-же :))
2 pasha_golub мои извенения :-)


 
ЮЮ ©   (2004-02-13 09:53) [9]

[5] ... [7]

Cмотря о чем мы говорим. Если о TObjectList, созданном с параметром AOwnsObjects = true и в нем храним экзепляры объектов, то об их удалении заботиться не надо


 
Тимохов ©   (2004-02-13 09:54) [10]


> ЮЮ © (13.02.04 09:53) [9]

О Tlist.


 
Юрий Зотов ©   (2004-02-13 10:14) [11]

> DarkUser © (13.02.04 09:33) [5]
> Clear also frees the memory used to store the Items array...
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

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

Да и подумайте сами: Item - это нетипизированный указатель, он может указывать на что угодно, любую область любого размера. Как же TList может эту область освободить, если он не знает ее размера? Никак.



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

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

Наверх




Память: 0.49 MB
Время: 0.04 c
14-80134
Soft
2004-01-31 20:43
2004.02.25
Нужно ли платить налоги?


1-79722
Senator
2004-02-12 16:59
2004.02.25
ComboBox


1-80004
jeka_t
2004-02-13 11:38
2004.02.25
Почему метод AddStrings не пашет в классе TStrings?


3-79600
samalex
2004-02-02 12:38
2004.02.25
Не работает ADO под win98


3-79549
Dima
2004-01-30 00:26
2004.02.25
ADO DataSets