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

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

Войти
Регистрация
Восстановить пароль
 
stv
26 / 26 / 6
Регистрация: 05.03.2010
Сообщений: 171
#1

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

29.11.2010, 18:35. Просмотров 484. Ответов 1
Метки нет (Все метки)

Здравствуйте. Мне необходимо построить иерархию классов - базовый абстрактный и два производных. Оба производных класса имеют несколько одинаковых свойств и один одинаковый метод.

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

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

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

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

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

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