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

Вниз

TList или Array   Найти похожие ветки 

 
woma   (2008-08-01 20:15) [0]

Мне нужно хранить в массиве некоторое количество экземпляров собственных классов. Что лучше в таком случае выбрать TList или все же простой динамический массив?


 
Johnmen ©   (2008-08-01 20:25) [1]


> Что лучше

В каком смысле?


 
Alucard   (2008-08-01 20:46) [2]

Если речь идет об объектах, то лучше TList, он использует массив для хранения ссылок на элементы, поэтому большой разницы нет, за исключением дополнительной функциональности у TList.

В случае примитивных типов - зависит от количества элементов, частоты изменения их количества, привлекательности доступа по смещению.


 
Amoeba ©   (2008-08-01 20:48) [3]


> Если речь идет об объектах, то лучше TList

Точнее TObjectList


 
Anatoly Podgoretsky ©   (2008-08-01 21:05) [4]

Если хранить, то массив.


 
woma   (2008-08-01 22:45) [5]


> В каком смысле?

Ну наверное, в самом прямом: что бы вы сами использовали в такой ситуации.
---
Попробую использовать TObjectList. У меня в программе есть несколько классов (все наследники одного), вот экземпляры этих классов я и хочу сохранять в TObjectList. Но проблема в том что в одном TObjectList я хочу хранить экземпляры разных классов (но все они образованы от одного базового). Поместить то экземпляр класса в TObjectList можно. Но как считать и узнать, а что это за класс считывается?


 
Amoeba ©   (2008-08-01 23:42) [6]

См. ф-ии ClassName и ClassNameIs, а также оператор is. Подробности в справке.


 
Тын-Дын ©   (2008-08-01 23:43) [7]

procedure TForm1.Button1Click(Sender: TObject);
begin
 if (Sender.ClassType=TButton) then ShowMessage(Sender.ClassName);
end;



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

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

Наверх




Память: 0.45 MB
Время: 0.05 c
3-1205735599
Karburator
2008-03-17 09:33
2008.09.14
события открытия и закрытия списка поля в DBGrid-e


2-1217519710
dars73
2008-07-31 19:55
2008.09.14
как отвязать программу от определенного места


3-1205749554
harisma
2008-03-17 13:25
2008.09.14
Выборка из таблицы


15-1216906570
Jeer
2008-07-24 17:36
2008.09.14
Третий Всероссийский Слет Сисадминов


2-1217625174
self.name
2008-08-02 01:12
2008.09.14
stream1.read(stream2,size); почему не работает?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский