Главная страница
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.024 c
9-48386
walruz
2003-03-15 02:56
2003.09.15
help ...canvas


1-48602
Sirakuz
2003-09-03 13:01
2003.09.15
Выключить ScrollBar в ListView


3-48409
aleman
2003-08-26 10:16
2003.09.15
Может ли Oracle 8i работать с файлами по сети?


14-48752
Kost
2003-08-26 21:45
2003.09.15
Tables


14-48738
Delphi5.01
2003-08-26 19:47
2003.09.15
Запасный выход