В данной статье я расскажу про
виртуальные методы.
Виртуальный метод даёт возможность переопределения
метода в производном классе.
Представим ситуацию:
У нас есть класс CAdmins имеющий метод
GetNickName() , а также производный класс CP45H3 в котором нам
нужно переопределить метод GetNickName().
Если мы опишем такой код:
То компилятор скажет нам: "Это всё хуйня, переделывай".
В реализации задуманного нам помогут виртуальные методы.
Сделав метод в базовом классе виртуальным, мы сможем переопределять его
в любом производном классе.
Пример реализации задуманного
Вывод:
Скрытый текст
В данном коде имеется один базовый класс и два
производных, которые переопределяют метод GetNickName().
Деструктор чисто виртуального класса также должен быть
виртуальным для корректного удаления объектов производных классов.
Скачать проект вы можете на моём GitHub'e