Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.09.15;
Скачать: CL | DM;

Вниз

Динамический массив и TObjectList   Найти похожие ветки 

 
KSergey ©   (2003-09-04 09:43) [0]

А вот кт оможет сказать: есть ли разница при использовании TObjectList и динамического массива array of TObject?
Ну TObjectList может уничтожить объекты при собственном уничтожении. И все? Ну есть у него методы типа Assign.
Но если нужно просто сохранить ссылки на некие объеты, кол-во которых заранее не известно и может меняться в процессе работы программы - есть ли разница в плане там эффектиности исп. памяти, скорости перераспеделения под новое кол-во элементов?

Для определенности условится, что размер (кол-во хранимых ссылок)
а) 50..100
б) 10 000

2. А разница между TStringList и array of String? Ну опять же кроме Assign, ComaString и т.п. методов объекта, т.е. необходимо лишь сохранить строки - что эффективнее использовать?

Буду благодарен за мнения, особенно аргументированные.


 
MBo ©   (2003-09-04 09:50) [1]

1) Списки удобнее в использовании - черную работу по перераспределению памяти и т.д. берет на себя класс
2) Для каждой конкретной задачи можно написать наиболее эффективный в данных условиях код - но в большинстве случаев возможностей и скорости списков хватает.


 
Palladin ©   (2003-09-04 09:57) [2]

ИМХО.

1 Array of это динамический массив в то время как в классах-списках используется указатель на массив. Производительность будет побольше, правда при достаточно грамотной работе с динамическими массивами, разница абсолютно не заметна. Однако эту грамотную работу нужно еще реализовать, что является дополнительной затратой времени.
2 Удобства, удобства и еще раз удобства. Достаточно заглянуть в справку на предмет свойств и методов. Понадобится тебе сортировка элементов, реализовывать в ручную будет гораздо дольше чем использовать уже написанное.

Все сводится к потере времени при разработке.

Когда предпочтительней динамические массивы? Когда от элементов не требуется ничего кроме загрузки элементов в начале и выгрузки в конце и ничего более. Опять же при этом нужно заглядывать в будущее, не понадобится ли тебе еще чего от элементов.


 
mrcat ©   (2003-09-04 10:41) [3]

KSergey © (04.09.03 09:43)

Принципиально нет никакой разницы, используете Вы array of TObject или TObjectList. В этом легко убедится заглянув в исходные тексты Contnrs. То же касается TStringList и array of String.



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

Текущий архив: 2003.09.15;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.037 c
8-48655
Still Swamp
2003-05-17 17:26
2003.09.15
Как прервать воспроизведение?


7-48798
Вася Пупкин
2003-07-01 18:09
2003.09.15
Загрузочный вирус! Казалось бы.. [D6, WinXP] (восстановление)


1-48555
Relaxxx
2003-09-01 16:29
2003.09.15
Поиск по строкам у комбоБокс


6-48673
Maxim Pshevlotsky
2003-07-11 06:54
2003.09.15
TIDFTP.LIST - Отличия присылаемых строк Windows и Linux


7-48810
Dimok
2003-06-29 01:05
2003.09.15
Работа с тюнером