Вниз
Скачать: CL | DM;

Оригинальный 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.01 c
1-83438
Андрей
2003-05-13 08:08
2003.05.26
Как ограничить кол-во одновременно запущенных потоков


14-83688
Mak
2003-05-05 14:04
2003.05.26
Crystal Report


14-83696
oss
2003-05-06 13:56
2003.05.26
документация


4-83826
AlexB
2003-04-01 06:57
2003.05.26
Message table


14-83721
Calm
2003-05-05 15:44
2003.05.26
Моего поста не видно в ветке!




   Наверх