虚函数的使用方法:
#include <iostream>
using namespace std;
class A
{
public:
virtual void display() //(1)在基类用virtual声明成员函数为虚函数
{ cout<<"A called"<<endl; }
};
class B:public A
{
public:
void display() //(2) 在派生类中重新定义此函数 [ virtual ]
{ cout<<"B called"<<endl; }
};
int main()
{
A a;
B b;
A * p=&a; //(3) 定义一个指向基类对象的指针变量
p->display();
p=&b;
p->display(); //(4) 通过该指针变量调用此虚函数
return 0;
}
运行结果:
A called.
B called.