Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 5.00
RealDreamy
0 / 0 / 0
Регистрация: 20.02.2010
Сообщений: 29
#1

Указатель на потомка в базовом классе. - C++

08.03.2010, 13:20. Просмотров 1120. Ответов 6
Метки нет (Все метки)

Мне нужно создать в базовом классе массив указателей на потомки этого класса. Помогите - как это сделать?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.03.2010, 13:20     Указатель на потомка в базовом классе.
Посмотрите здесь:

Создать массив в базовом абстрактном классе, и его передать функциям производных классов C++
C++ базовый и производный класс, в базовом объявлена переменная "protected", она недоступна по имени в производном классе! template <class T> воду мутит!
C++ Матрица в классе, указатель на матрицу.
Теряется указатель на переменые в классе C++
Как избежать не нужной пустой реализации виртуальных методов в базовом классе? C++
C++ Перегрузить операцию сложения в базовом классе, который имеет два наследника
C++ Вызов специфических для потомка функций, не зная класса потомка
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Norby
 Аватар для Norby
65 / 65 / 2
Регистрация: 12.03.2008
Сообщений: 392
08.03.2010, 13:24     Указатель на потомка в базовом классе. #2
Попробуй предописать класс. А потом ниже в самом объявлении класса создавать массив.
Nick Alte
Эксперт С++
1599 / 991 / 117
Регистрация: 27.09.2009
Сообщений: 1,911
Завершенные тесты: 1
08.03.2010, 13:25     Указатель на потомка в базовом классе. #3
А зачем тебе указывать именно на потомков? Нет, ну если уж совсем приспичило, можно просто предварительно объявить:
C++
1
2
3
4
5
6
class Derived;
class Base {
    Derived *d[20];
};
 
class Derived: public Base {};
Но вообще сам факт того, что у тебя возникла такая необходимость, обычно свидетельствует, что у тебя в замысле что-то пошло серьёзно наперекосяк.
RealDreamy
0 / 0 / 0
Регистрация: 20.02.2010
Сообщений: 29
08.03.2010, 13:39  [ТС]     Указатель на потомка в базовом классе. #4
Спасибо за помощь, работает.
M128K145
Эксперт C++
 Аватар для M128K145
8278 / 3497 / 143
Регистрация: 03.07.2009
Сообщений: 10,707
08.03.2010, 15:59     Указатель на потомка в базовом классе. #5
RealDreamy, ознакомьтесь с понятием полиморфизм. Вам незачем создавать массив указателей на потомков, вам достаточно всего лишь создать массив указателей на базовый класс
Nameless One
Эксперт С++
 Аватар для Nameless One
5761 / 3410 / 255
Регистрация: 08.02.2010
Сообщений: 7,413
08.03.2010, 18:07     Указатель на потомка в базовом классе. #6
...и не забыть про виртуальные функции
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.03.2010, 06:11     Указатель на потомка в базовом классе.
Еще ссылки по теме:

C++ В базовом классе вводится символьный массив, а в производном - проверка на максимальную длину строки
C++ Почему без пустого целочисленного поля в базовом классе программа виснет?
C++ Вызов метода потомка через указатель на родителя
C++ Как работают static-переменные объявленные в в базовом классе?
Указатель в классе, указывающий на этот же класс C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
RealDreamy
0 / 0 / 0
Регистрация: 20.02.2010
Сообщений: 29
18.03.2010, 06:11  [ТС]     Указатель на потомка в базовом классе. #7
Цитата Сообщение от M128K145 Посмотреть сообщение
RealDreamy, ознакомьтесь с понятием полиморфизм. Вам незачем создавать массив указателей на потомков, вам достаточно всего лишь создать массив указателей на базовый класс
Но ведь в потомках есть поля, которых нет в базовом классе. О виртуальных функциях посмотрю, не припомню, что это такое)
Я просто раньше не прогал на ООП, и вообще серьезных программ не писал. Сейчас пишу меню, в котором может быть неограниченное количество подменю любого уровня вложенности, что бы можно было убравлять мышой, и возможность использования сочетания клавиш. В общем полноценное продуманное меню хочу сделать, чисто ради интереса и опыта. Для удобства сделал класс Menu, и два потомка MainMenu и PodMenu, так как они существенно отличаются по прорисовке, ну и еще несколько особенностей. Вот и понадобилось что бы и в главном меню, и в подменю были ссылки на другие подменю.
Yandex
Объявления
18.03.2010, 06:11     Указатель на потомка в базовом классе.
Ответ Создать тему
Опции темы

Текущее время: 21:38. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru