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

Абстрактный класс и его производные - C++

Восстановить пароль Регистрация
 
stv
26 / 26 / 6
Регистрация: 05.03.2010
Сообщений: 171
29.11.2010, 18:35     Абстрактный класс и его производные #1
Здравствуйте. Мне необходимо построить иерархию классов - базовый абстрактный и два производных. Оба производных класса имеют несколько одинаковых свойств и один одинаковый метод.

Вопросы: В каком из классов описать эти свойства и методы - в базовом или в обоих производных? Есть необходимость использовать инициализацию классов через конструкторы - надо ли в базовом классе описывать конструктор? Если да, то примерно как?

Заранее спасибо за помощь.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.11.2010, 18:35     Абстрактный класс и его производные
Посмотрите здесь:

C++ Создать класс - данные - абстрактный базовый класс. Создать производные классы
C++ Абстрактный класс.производные функции
C++ Создать абстрактный класс с виртуальной функцией вычисления нормы и модуля; определить производные классы с собственными функциями
Создать абстрактный базовый класс с виртуальной функцией - Объем. Создать производные классы: Пирамида, Шар со своими функциями объема C++
C++ Создать абстрактный класс Vehicle. На его основе реализовать классы:
Создать иерархию классов Шахматная фигура – абстрактный класс, содержащий поле – цвет. Создать производные классы C++
C++ Создать абстрактный базовый класс Figure с виртуальной функцией Периметр. Создать производные классы Rectangle
C++ Создать абстрактный базовый класс и производные

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Nick Alte
Эксперт С++
1590 / 982 / 115
Регистрация: 27.09.2009
Сообщений: 1,897
Завершенные тесты: 1
29.11.2010, 18:53     Абстрактный класс и его производные #2
Цитата Сообщение от stv Посмотреть сообщение
В каком из классов описать эти свойства и методы - в базовом или в обоих производных?
Свойства можно описать в базовом классе только в том случае, если они обязательно должны присутствовать во всех производных классах. Поскольку базовый класс абстрактный, метод в нём должен быть объявлен (но не определён) как чистый виртуальный. В потомках этот метод необходимо заново объявить и определить.
Цитата Сообщение от stv Посмотреть сообщение
Есть необходимость использовать инициализацию классов через конструкторы - надо ли в базовом классе описывать конструктор? Если да, то примерно как?
Если данные объявлены в базовом классе, то и инициализировать их надо в конструкторе базового класса. В противном случае конструктор ему не нужен. Что до "как" - то как обычно, списком инициализации.
Yandex
Объявления
29.11.2010, 18:53     Абстрактный класс и его производные
Ответ Создать тему
Опции темы

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