Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.062 c
11-1221408343
dron9999
2008-09-14 20:05
2010.08.27
не устанавливается компонент ServerSocket&KlientSocket


15-1272275926
TUser
2010-04-26 13:58
2010.08.27
Как создать Кремниевую долину?


2-1272383481
Lyonux
2010-04-27 19:51
2010.08.27
Шифрация текста по таблице Виженера.


4-1238501632
JayMax
2009-03-31 16:13
2010.08.27
Проблема с запуском системного приложения с Delphi


2-1274347680
slay64
2010-05-20 13:28
2010.08.27
Обнаружена ошибка. Приложение будет закрыто....





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский