在成员函数中调用虚函数(P259)
/*
实现多态时,必须满足的条件是:
使用基类指针或引用来调用基类中声明的虚函数。
*/
#include<iostream>
using namespace std;
class CBase
{
public:
void func1()
{
cout<<"CBase::func1()"<<endl;
func2();
func3();
}
virtual void func2()
{
cout<<"CBase::func2()"<<endl;
}
void func3()
{
cout<<"CBase::func3()"<<endl;
}
};
class CDerived:public CBase
{
public:
virtual void func2()
{
cout<<"CDerived:func2()"<<endl;
}
void func3()
{
cout<<"CDerived:func3()"<<endl;
}
};
int main()
{
CDerived d;
d.func1();
CBase a;
a.func1();
return 0;
}

浙公网安备 33010602011771号