![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 | ||
Форумчанин
Регистрация: 01.09.2008
Сообщений: 178
|
![]()
Добрый день!
Собственно вопрос: если в родительском классе определен и реализован виртуальный метод, обязательно переопределять его в дочернем? Код: Код:
Цитата:
Цитата:
Быть радикальным - значит понять вещь в её корне. К.Маркс
Последний раз редактировалось nazavrik; 29.01.2010 в 11:49. |
||
![]() |
![]() |
![]() |
#2 | |
Участник клуба Подтвердите свой е-майл
Регистрация: 19.11.2007
Сообщений: 1,022
|
![]() Цитата:
Последний раз редактировалось profi; 29.01.2010 в 12:00. |
|
![]() |
![]() |
![]() |
#3 | |
Форумчанин
Регистрация: 01.09.2008
Сообщений: 178
|
![]()
а это что:
Код:
Цитата:
Быть радикальным - значит понять вещь в её корне. К.Маркс
|
|
![]() |
![]() |
![]() |
#4 | |
Участник клуба Подтвердите свой е-майл
Регистрация: 19.11.2007
Сообщений: 1,022
|
![]()
В классе OneTwo не реализован метод Print.
Цитата:
Последний раз редактировалось profi; 29.01.2010 в 12:05. |
|
![]() |
![]() |
![]() |
#5 | |
Старожил
Регистрация: 22.05.2007
Сообщений: 9,087
|
![]() Цитата:
Если из минусов тут пожалуй только необходимость синхронизировать виртуальность методов (сделали метод невиртуальным в базовом классе, значит нужно его делать невиртуальным во всех его потомках), то из плюсов: 1) не нужно смотреть базовый класс, чтобы узнать какие методы виртуальные, а какие нет; 2) Если в процессе рефакторинга "выкинуть" базовый класс, то не появятся непонятные баги из-за того, что виртуальные функции стали вдруг невиртуальными; ... |
|
![]() |
![]() |
![]() |
#6 | |
Участник клуба Подтвердите свой е-майл
Регистрация: 19.11.2007
Сообщений: 1,022
|
![]() Цитата:
nazavrik вот пример: Код:
Последний раз редактировалось profi; 29.01.2010 в 13:51. |
|
![]() |
![]() |
![]() |
#7 | |
Форумчанин
Регистрация: 01.09.2008
Сообщений: 178
|
![]() Цитата:
Спасибо за пример! ![]()
Быть радикальным - значит понять вещь в её корне. К.Маркс
|
|
![]() |
![]() |
![]() |
#8 | |
Участник клуба Подтвердите свой е-майл
Регистрация: 19.11.2007
Сообщений: 1,022
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
#9 | |
Старожил
Регистрация: 22.05.2007
Сообщений: 9,087
|
![]() Цитата:
У обоих вариантов свои плюсы и минусы, а потому называть один из них ошибочным мне видится некорректным. Почему? Что не так в этих "лишних" virtual? |
|
![]() |
![]() |
![]() |
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Наследование на C++ | dziga1989 | Помощь студентам | 5 | 22.10.2009 11:25 |
Наследование | alex_triton | Общие вопросы C/C++ | 0 | 19.10.2009 20:25 |
Наследование | beregok | Общие вопросы C/C++ | 1 | 04.07.2009 22:39 |
Наследование | z3rg | Общие вопросы C/C++ | 9 | 30.04.2009 20:43 |
Наследование: абстрактный класс | zak | Общие вопросы C/C++ | 4 | 22.12.2007 13:49 |