Главная страница
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.02 c
14-48694
Marser
2003-08-25 00:03
2003.09.15
Именинники 25 августа


14-48726
Pindos
2003-08-26 21:26
2003.09.15
Пираты


1-48541
Raper
2003-09-02 11:28
2003.09.15
Как использовать функцию BinToHex, HexToBin


14-48755
Neox
2003-08-26 12:28
2003.09.15
Любителям 1С


14-48695
nikkie
2003-08-25 16:34
2003.09.15
тест