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

Вниз

Выделяю память. Освобождать Пушкин или сам?   Найти похожие ветки 

 
12 ©   (2010-03-23 15:30) [0]

PRec = ^Rec;
 
 Rec = Record
   ID : integer;
   lvl : byte;
 end;

Пишу

   
    New(R);
    R.ID := AOraQuery.FieldByName("IdTerra").AsInteger;
    R.lvl := lvl;
    TreeNode:=TreeAddress.Items.AddChildObject(
                                 Node,
                                 AOraQuery.FieldByName("NameTerra").AsString,
                                 R);

, работает.

но ни разу не вызываю антипод к New(R);
А чувствую что надо, вернее чувствую некую неправильность.

Так? если да, когда вызвать?


 
12 ©   (2010-03-23 15:33) [1]

TreeAddress: TTreeView;


 
Медвежонок Пятачок ©   (2010-03-23 15:33) [2]

когда перестраиваешь дерево или убиваешь его


 
12 ©   (2010-03-23 15:33) [3]

тьфу, блин и еще
 R : PRec;


 
12 ©   (2010-03-23 15:38) [4]


> Медвежонок Пятачок ©   (23.03.10 15:33) [2]

т.е. надо помнить все выделенные мной R или перед убиством дерева пробежаться по нему и убить все Data?

А само оно, при умирании,  ни как?


 
Омлет ©   (2010-03-23 15:38) [5]

Подключи FastMM, он в дебаг-режиме сразу расскажет о неправильности.


 
Медвежонок Пятачок ©   (2010-03-23 15:40) [6]

можно и пушкину поручить.
не фик и потеря. 8 байт на узел


 
Омлет ©   (2010-03-23 15:49) [7]

> Медвежонок Пятачок ©   (23.03.10 15:40) [6]
> не фик и потеря. 8 байт на узел


80 Мб на сто мильёнов записей.


 
12 ©   (2010-03-23 15:56) [8]

Спасибо.


 
Игорь Шевченко ©   (2010-03-23 16:26) [9]


> 80 Мб на сто мильёнов записей.


семечки


 
Anatoly Podgoretsky ©   (2010-03-23 19:03) [10]

> Игорь Шевченко  (23.03.2010 16:26:09)  [9]

Чему молодежь учишь :-)


 
Loginov Dmitry ©   (2010-03-23 22:20) [11]


> А чувствую что надо, вернее чувствую некую неправильность.
>
>
> Так? если да, когда вызвать?


Можно освобождать в событии OnDeletion.
Правда следует учитывать, что OnDeletion срабатывает еще и при Drag&Drop или при изменении Parent"a


 
han_malign   (2010-03-24 17:49) [12]

а я бы прикинул диапазоны и запихал в pointer(cardinal(lvl) shl BitsPerId or cardinal(ID) and not(cardinal(-1) shl BitsPerId))

это - если лень смотреть в сторону TCustomTreeView.OnCreateNodeClass...


 
12 ©   (2010-03-24 17:55) [13]

интересно, но разбирать/собирать не проще



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

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

Наверх




Память: 0.49 MB
Время: 0.139 c
2-1266718029
GoTo
2010-02-21 05:07
2010.08.27
Проблемы со сворачиванием вторичных окон в панель задач


15-1269714022
Jeer
2010-03-27 21:20
2010.08.27
7-й чемпион мира по шахматам


15-1270622334
Мимо не прошел
2010-04-07 10:38
2010.08.27
отделить шум от голоса в мп3 подручными средствами


10-1167226388
Priest
2006-12-27 16:33
2010.08.27
Собственная реализация IDispatch


2-1269262046
Константин
2010-03-22 15:47
2010.08.27
Не уничтожается объект