Вниз
Скачать: CL | DM;

Позднее наследование   Найти похожие ветки 

 
t_killa ©   (2004-05-08 18:22) [0]

Народ, у меня такая проблема.
Есть некоторый класс и 4 класса его наследники. Можно ли создать динамический массив типа класса предка. А после в программе в нём создавать объекты классов потомков?
Заранее большое спасибо!


 
Anatoly Podgoretsky ©   (2004-05-08 18:35) [1]

Конечно можно


 
t_killa ©   (2004-05-08 18:39) [2]

Anatoly Podgoretsky Вы меня успокоили.
Спасибо :)


 
Anatoly Podgoretsky ©   (2004-05-08 18:53) [3]

Более того это обычное решение, что бы использовать преимущества полиморфизма, например

var
 S: TStrings;
begin
 S := TStringList.Create;

Ну а массив частный случай, каждый его элемент может быть любого типа, лишь бы был потомком от базового класса.


 
t_killa ©   (2004-05-08 19:20) [4]

Кстати, можно ещё вопросик насчёт динамических массивов
Насколько верно:
есть динамический массив Mass небазового типа
SetLength(Mass,Length(Mass)+1);
Интересует корректность применения функции Length. А имеено можно ли её применять для любого массива или только для строк, (массива содержащего символы)?


 
Anatoly Podgoretsky ©   (2004-05-08 19:35) [5]

Корректно. Увеличивается размер на один элемент, массив может быть любого типа.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.044 c
1-1083832823
Бульбаш
2004-05-06 12:40
2004.05.23
Печать через PrintDialog


14-1083679000
yevgeniy
2004-05-04 17:56
2004.05.23
Прямо неудобно спрашивать... но: как устанавливать компоненты?


1-1083684435
Schummi
2004-05-04 19:27
2004.05.23
Закрытие TTabSheet


1-1083844495
Nikolai_S
2004-05-06 15:54
2004.05.23
Подскажите где взять какой-нибудь продвинутый StringGrid


6-1081178101
electric
2004-04-05 19:15
2004.05.23
FTP.FTPDirectoryList.name




   Наверх