编辑代码

#include <iostream>
using namespace std;

//纯虚函数和抽象类
class Base
{
public:
	//纯虚函数
	//只要类里面有一个纯虚函数,就称之为抽象类
	//1、无法实例化对象
	//2、抽象类的子类必须重写父类中的纯虚函数,否则也是属于抽象类
	virtual void func() = 0 ;
};

class Son : public Base
{
public:
	 void func()
	{
		cout << "func()的调用" << endl;
	}
};

void test01()
{
	//Base a;		抽象类无法实例化对象
	//new Base;		抽象类无法实例化对象

	//Son s;		//子类必须重写父类中的纯虚函数,否则无法实例化对象
	Base * base = new Son;
	base->func();
}

int main()
{

test01();

	return 0;
}