示例如下:
#include<iostream>
using namespace std;
//纯虚函数和抽象类
class Base
{
public:
//纯虚函数
//只要有一个纯虚函数,这个类被称为纯虚函数
//抽象类特点:
//1.无法实例化对象
//2.抽象类的子类,必须重写父类中的纯虚函数,否则也属于抽象类
virtual void func() = 0;
};
class Son :public Base
{
public:
virtual void func()
{
cout << "Son-func()的调用" << endl;
}
};
void test01()
{
//Base base;//抽象类无法实例化对象
//new Base;//抽象类无法实例化对象
//Son s;//子类必须重写分类中的纯虚函数,否则无法实例化对象
}
void test02()
{
Son s;
s.func();
Base* base = new Son;
base->func();
}
int main()
{
test02();
return 0;
}