У меня вопрос о чистых виртуальных функциях. Я не понимаю, как это работает, и когда нам нужно использовать чистые виртуальные функции. Это пример того, что я не понимаю:чистая виртуальная функция, как она работает
file.h
class A
{
public :
A();
~A();
virtual void func1(void) = 0;
virtual UINT32 func2(void) = 0;
UINT32 initialize(void) = 0;
}
file.cpp
UINT32 A:initialize (void)
{
func1();
func2();
return (result);
}
Может кто-нибудь объяснить в деталях, что на самом деле делает этот пример, и что в результате? Я очень ценю вашу помощь и знания. Большое спасибо.
Это не скомпилируется. Вы уверены, что не имеете в виду 'UINT32 result = func2();' вместо просто 'func2();' в середине функции инициализации A: – Lalaland
Да, я думаю, что это ошибка. Ты прав. Спасибо .. :) –
Возможный дубликат [чистая виртуальная функция с реализацией] (http://stackoverflow.com/questions/2089083/pure-virtual-function-with-implementation) –