Форум программистов, компьютерный форум, киберфорум
Наши страницы

Хранение экземпляров классов-наследников, и вызов их методов - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Получить все возможные варианты комплектов книг. Исправить код http://www.cyberforum.ru/cpp-beginners/thread1065260.html
#include<iostream.h> using namespace std; int main() { int i=0, j=0, k=0, m=0; while(i<7) {
C++ Определить структуру Модель Виндовс для работы с моделями экранных окон.В качестве полей задаются Определить структуру Model Window для работы с моделями экранных окон.В качестве полей задаются:заголовок окна,координаты левого верхнего угла,размер по горизонтали,размер по вертикали,состояние... http://www.cyberforum.ru/cpp-beginners/thread1065255.html
C++ Найти уравнение прямой, проходящей через точку А
Найти уравнеие прямой (в форме альфа*x+бета*y+гамма=0),проходящей через точку А(X1,Y1) перпендикулярно к прямой ax+by+c=0. Пожалуйста помогите написать программу.
C++ Узнать какая кнопка была нажата SDL2.0
Привет, как в этом примере узнать какая кнопка была нажата, я хочу сделать для каждой кнопки отдельное действия, но не могу понять, как узнать какая кнопка была нажата Код: /*This source code...
C++ Определить, можно ли представить число в виде суммы двух квадратов натуральных чисел http://www.cyberforum.ru/cpp-beginners/thread1065233.html
Дано натуральное число n.Определить,можно ли представить его в виде суммы двух квадратов натуральных чисел.Если да,то найти все пары x,y такие,что n=x^2+y^2 (x<=y). Очень нужна ваша помощь,помогите...
C++ Вычислить выражение, используя циклы Уважаемые программисты форума, кроме как к Вам мне обратиться нет к кому. Я только начинаю учить С++, но времени катастрофически не хватает, чтобы разобраться с этой задачей. Помогите ( Дано... подробнее

Показать сообщение отдельно
Countermeasure
0 / 0 / 0
Регистрация: 07.01.2014
Сообщений: 2

Хранение экземпляров классов-наследников, и вызов их методов - C++

07.01.2014, 22:47. Просмотров 882. Ответов 3
Метки (Все метки)

Столкнулся с проблемой.
Есть класс-родитель и 2 класса-наследника.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class Base
{
public:
   void baseFunc();
};
 
class Derived1 : public Base
{
public:
   void derived1Func();
};
 
class Derived2 : public Base
{
public:
   void derived2Func();
};
И есть массив экземпляров классов Derived1 и Derived2
C++
1
vector <Base*> Array;
В него я записываю указатели этих экземпляров класса
C++
1
2
Array.push_back(new Derived1);
Array.push_back(new Derived2);
При таком подходе я не имею доступа к методам из классов Derived
C++
1
Array[0]-> //Здесь IDE дает использовать только метод baseFunc()
Как можно по-другому оформить хранение экземпляров классов Derived1 и Derived2, чтобы можно было использовать и их методы? Или целесообразнее просто создать вектора под каждый класс-наследник?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.