Форум С++

 

Ответить на сообщение

Вернуться к теме

Вы отвечаете на сообщение:

Автор: cheops   (01.04.2007 в 14:54)
Если тела не реализовывать, то не будет :))) правда объявление прототипа без реалзации возможно не только для виртуальных функций, но и вообще для всех функций программы. Задача чисто виртуального метода - потребовать переопределение метода в производном классе (например, в Java, PHP для этого используются интерфейсы)...
Приведённый выше пример, является демонстрацией того, как не следует поступать - так как мы при помощи "хитрости" просто пытаемся (не до конца) из чисто-виртуальной функции сделать просто виртуальную функцию. Такой "хитрый" код является признаком плохо тона. Да возможно (специально проверил в Builder, VC++ и GCC), но лучше так не поступать. Традиционно для чисто виртуальных методов в базовом классе не определяют реализации вообще, а реализуют их в производных классах.


Ваше имя:

Пароль:

Цитировать

Используйте тэги для выделения текста:
Код: [code][/code]
Жирный: [b][/b]
Наклонный: [i][/i]
URL: [url][/url]

Сообщение:

Прикрепить: