![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
Berkut |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 53 Регистрация: 16.3.2004 Репутация: нет Всего: нет |
Хотелось бы разобраться в таком вопросе:
Дупустим у нас есть базовый класс, где только одна чисто виртуальная функция. Можно ли ее использовать в программе или она нам нужна только в производных классах. Запутался я в этом что-то. |
|||
|
||||
Artiom |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1031 Регистрация: 11.3.2003 Где: Минск\Баку Репутация: нет Всего: 17 |
Чисто виртуальной называется виртуальная функция абстрактного класса. Невозможно создать объект абстрактного класса, следовательно, нельзя вызвать и чисто виртуальную функцию. Виртуальная функция делается "чистой" при помощи инициализатора =0
Обычную виртуальную функцию можно вызывать и в базовом классе. Её можно использовать даже если у класса нет производных классов. -------------------- Если тебя жизнь трахает, значит, ты ещё живой |
|||
|
||||
Berkut |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 53 Регистрация: 16.3.2004 Репутация: нет Всего: нет |
То есть чисто виртуальная функция в базовом классе заставляет нас определять ее в каждом производном классе, чтобы избежать ошибок?
|
|||
|
||||
Artiom |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1031 Регистрация: 11.3.2003 Где: Минск\Баку Репутация: нет Всего: 17 |
Чисто виртуальная функция, которая не определена в производном классе, остается чисто виртуальной, поэтому такой производный класс, как и базовый, является абстрактным. Если ты строишь реализацию поэтапно, то у тебя может быть несколько абстрактных классов. Всё зависит от того, что ты хочешь. -------------------- Если тебя жизнь трахает, значит, ты ещё живой |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |