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

Вниз

Оригинальный TList   Найти похожие ветки 

 
HydraMarat   (2003-05-14 18:40) [0]

Уважаемые Мастера, необходимо сделать, как бы, сквозной список. Т.е. он его элементы определяются некоторым индексом и считаются реальным, но на самом деле отсутствовать. Некоторая вариация на тему св-ва Capacity, но то вель по-любому выделит Pointer"ы, а вот как без выделения памяти обойтись? Может что посоветуете.

Спасибо!


 
clickmaker   (2003-05-14 18:55) [1]

А ты не удаляй объекты из списка, а просто освобождай память и присваивай соотв. эл-ту списка nil.
До тех пор пока не скажешь List.Pack, они будут в нем жить, и индексы не съедут


 
Тих   (2003-05-14 20:48) [2]

> TList, which stores an array of pointers
Вообще, лучше на torry поискать какой-нить аналог сишных map или hash_map, или самому реализовать вот такой вот РАЗРЕЖЕННЫЙ массив. Алгоритм в общем-то прост - при обращении к элементу по индесу класс-контейнер сперва проверяет, есть ли уже элемент с таким индесом в нем, если нет - создает, если есть - отдает (указатель на) ранее созданный. При помещении в него элемента - аналогично.



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

Форум: "Основная";
Текущий архив: 2003.05.26;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.006 c
1-83526
ламерша
2003-05-13 16:29
2003.05.26
PrintDialog


1-83563
Фикус
2003-05-13 12:04
2003.05.26
Получение диапазона ячеек в Excel


3-83321
AlexBut
2003-05-05 08:09
2003.05.26
Grid - Закрепление столбцов


4-83801
bobo
2003-03-25 19:06
2003.05.26
Как сделать ПЛАВНУЮ прокрутку в Rich Edit control ?


14-83663
Leran2002
2003-05-05 17:19
2003.05.26
Проблема с SetSystemTime





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский