纯虚函数是指被表明为不具体实现的虚成员函数,允许函数声明一个操作名称而不给出具体的操作,当派生类继承他以后再给出具体的操作
例子:
class A
{
public:
virtual void foo()=0;
};
class B
{
public:
void foo()
{
cout<<"this is B"<<endl;
}
};
纯虚函数规定继承该类的派生类,必须实现该函数,否则该类不能实例化
#include<iostream>
using namespace std;
class A
{
public:
virtual void foo()=0;//=0说明该虚函数是纯虚函数,没有实现纯虚函数,不能实例化
};
class B:public A
{
public:
void foo()
{
cout<<"This is B"<<endl;
}
};
class C:public A
{
public:
void foo()
{
cout<<"This is C"<<endl;
}
};
int main()
{
// A a; //不能实例化
B b;
C c;
b.foo();
c.foo();
return 0;
}