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

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

Войти
Регистрация
Восстановить пароль
 
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
#1

Функция абстрактного базового класса - C++

07.01.2014, 09:26. Просмотров 346. Ответов 5
Метки нет (Все метки)

Есть абстрактный класс, пусть его зовут A, а у него есть 4 потомка, пусть их зовут: B, C, D и F. Функция должна возвращать экземпляры потомков. Можно ли декларировать её, как возвращающую экземпляр базового класса?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.01.2014, 09:26     Функция абстрактного базового класса
Посмотрите здесь:

Функция базового класса - C++
Как вызвать функцию базового класса для объекта производного класса, если в производном классе эта функция была замещена?

Иерархия понятий в качестве абстрактного базового - C++
Здравствуйте, помогите, пожалуйста с программой: Необходимо реализовать иерархию понятий: "Район", "Область" и "Место" в качестве...

Использование абстрактного класса - C++
Доброго времени. Использую абстрактный класс Algorithm с абстрактным методом Calculate() и 5 производных от него классов, реализующих тот...

Наследование абстрактного класса - C++
Не могли бы вы мне объяснить данный код: Actions *NewAct = new Array(); // строка 1 ((Array *)NewAct)->Set_arr(count); // строка 2 ...

Объекты абстрактного класса - C++
Разбираю пример. В программе задается сразу 6 объектов. А нужно, чтобы количество объектов вводилось пользователем с клавиатуры. ...

Массив объектов абстрактного класса - C++
Есть абстрактный класс с двумя чисто виртуальными методами, от него наследуются два класса в которых эти методы переопределены и есть класс...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Kastaneda
Форумчанин
Эксперт С++
4511 / 2853 / 227
Регистрация: 12.12.2009
Сообщений: 7,249
Записей в блоге: 1
Завершенные тесты: 1
07.01.2014, 10:21     Функция абстрактного базового класса #2
Цитата Сообщение от taras atavin Посмотреть сообщение
Можно ли декларировать её, как возвращающую экземпляр базового класса?
Нет, только как указатель/ссылку на базовый класс.
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
07.01.2014, 10:25  [ТС]     Функция абстрактного базового класса #3
По ссылке вернуть можно? А на что?
C++
1
2
3
4
5
6
7
8
9
10
11
12
A &f(...)
{
 B b;
 C c;
 D d;
 E e;
 ...
 if (...)
 {
  return e;
 }
}
? Как то воняет возвратом ссылки на временный объект. И static нельзя.
Кудаив
329 / 406 / 24
Регистрация: 27.05.2012
Сообщений: 1,165
Завершенные тесты: 2
07.01.2014, 12:06     Функция абстрактного базового класса #4
умный указатель на родительский класс
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
07.01.2014, 12:08  [ТС]     Функция абстрактного базового класса #5
Расскажите, что это и с чем его едят.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.01.2014, 12:13     Функция абстрактного базового класса
Еще ссылки по теме:

Создается объект абстрактного класса:( - C++
Вот допустим у меня есть класс: class Cell { public: Cell() {} ~Cell() {} virtual std::string getData() const = 0; }; Ну...

вектор указателей абстрактного класса - C++
Добрый вечер, задача состоит в следующем: найти наибольшую площадь фигуры, посредством использования полиморфизма (родительский абстрактный...

Ошибка компиляции абстрактного класса - C++
public: Tour(); Tour(const char *, int, float); Tour(const Tour &); Tour & operator = (const Tour &) = delete ; ~Tour(); ...

Использование конструктора абстрактного класса - C++
Добрый вечер. Подскажите, как вызвать конструктор абстрактного класса из производного класса? Пытаюсь вызвать так: Advertising*...


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

Или воспользуйтесь поиском по форуму:
Кудаив
329 / 406 / 24
Регистрация: 27.05.2012
Сообщений: 1,165
Завершенные тесты: 2
07.01.2014, 12:13     Функция абстрактного базового класса #6
http://habrahabr.ru/post/140222/
Yandex
Объявления
07.01.2014, 12:13     Функция абстрактного базового класса
Ответ Создать тему
Опции темы

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