Главная страница
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.106 c
2-1265712324
Nilman
2010-02-09 13:45
2010.08.27
Поясните пожалуйста значение свойства TThread.FreeOnTerminate


11-1220855217
S.K.
2008-09-08 10:26
2010.08.27
Запуск браузера с параметрами в адресной строке


9-1186833611
AlexanderMS
2007-08-11 16:00
2010.08.27
Проблема с прозрачностью.


15-1267771411
oxffff
2010-03-05 09:43
2010.08.27
Буду в Москве с 22.03 по 26.03. Был бы рад встрече.


15-1275227407
Djony
2010-05-30 17:50
2010.08.27
Создание DLL в Delphi