Вниз
Скачать: 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.011 c
3-83324
Dusic
2003-05-07 10:14
2003.05.26
BDE для Access


3-83380
FANTASY
2003-05-05 04:14
2003.05.26
ClientDataSet файл черезмерно растет


14-83729
Дмитрий К.К.
2003-05-07 06:23
2003.05.26
Именинники 7 мая


4-83784
Pogi
2003-03-24 21:22
2003.05.26
Как получить заголовок окна другого приложения?


14-83653
Aga
2003-05-04 11:46
2003.05.26
Opera!




   Наверх