//定义一个抽象类(虚基类)
    //抽象类的特点
    //1:无法实例化对象。
    //2:抽象类的子类,必须重写父类中的纯虚函数,否则也为抽象类

    示例

    1. #include<iostream>
    2. using namespace std;
    3. //定义一个抽象类(虚基类)
    4. //抽象类的特点
    5. //1:无法实例化对象。
    6. //2:抽象类的子类,必须重写父类中的纯虚函数,否则也为抽象类
    7. class Base
    8. {
    9. public:
    10. //这是一个纯虚函数
    11. virtual void show()=0;//使用前提是函数类型前必须加virtual,没有virtual 的话直接让他们等于0会进行报错的。
    12. };
    13. class son:public Base
    14. {
    15. public:
    16. void show()
    17. {
    18. cout<<"云想衣裳花想容,春风拂槛露华浓。若非群玉山头见,会向瑶台月下逢"<<endl;
    19. }
    20. };
    21. void show()
    22. {
    23. // Base p;//抽象类无法实例化对象
    24. // new Base; //抽象类无法实例化对象
    25. Base *p;
    26. p=new son;
    27. p->show();
    28. return ;
    29. }
    30. int main()
    31. {
    32. show();
    33. return 0;
    34. }

    网址:https://www.bilibili.com/video/BV1et411b73Z?p=138

    虚基类的声明 语法:
    class 派生类名:virtual 继承方式基类名
    如: class B: virtual public A