纯虚函数:一种特殊的虚函数。
写法:virtual 函数类型 函数名(参数列表) = 0; //纯虚函数
作用:在基类中无法对虚函数给出有意义的实现,而把它声明为纯虚函数,它的实现留给该基类的派生类去实现。相当于上层基类声明好接口,下层子类根据特性对接口进行实现。
实现代码:
#include <iostream>
using namespace std;
class A
{
public:
virtual void print()=0;
};
class B:public A
{
public:
virtual void print(){ cout<<"this is B!"<<endl;}
};
class C:public A
{
public:
virtual void print(){ cout<<"this is C!"<<endl;}
};
int main()
{
A *p1 = new B;
p1->print();
p1 = new C;
p1->print();
delete p1;
return 0;
}
A作为一个比较上层的基类,声明好接口,B类,C类根据需要对函数print进行实现。