在成员函数中调用虚函数(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;
}

posted @ 2020-03-30 10:48  CollisionDimension  阅读(227)  评论(0)    收藏  举报