//定义一个抽象类(虚基类)
//抽象类的特点
//1:无法实例化对象。
//2:抽象类的子类,必须重写父类中的纯虚函数,否则也为抽象类
示例
#include<iostream>
using namespace std;
//定义一个抽象类(虚基类)
//抽象类的特点
//1:无法实例化对象。
//2:抽象类的子类,必须重写父类中的纯虚函数,否则也为抽象类
class Base
{
public:
//这是一个纯虚函数
virtual void show()=0;//使用前提是函数类型前必须加virtual,没有virtual 的话直接让他们等于0会进行报错的。
};
class son:public Base
{
public:
void show()
{
cout<<"云想衣裳花想容,春风拂槛露华浓。若非群玉山头见,会向瑶台月下逢"<<endl;
}
};
void show()
{
// Base p;//抽象类无法实例化对象
// new Base; //抽象类无法实例化对象
Base *p;
p=new son;
p->show();
return ;
}
int main()
{
show();
return 0;
}
网址:https://www.bilibili.com/video/BV1et411b73Z?p=138
虚基类的声明 语法:
class 派生类名:virtual 继承方式基类名
如: class B: virtual public A