只要有一个纯虚函数,这个类称为抽象类
抽象类的特点
1、无法实例化
2、抽象类的子类,必须要重写父类中的纯虚函数,否者也属于抽象类
- #include
- #include
- using namespace std;
- class Base
- {
- //纯虚函数
- //只要有一个纯虚函数,这个类称为抽象类
- //抽象类的特点
- //1、无法实例化
- //2、抽象类的子类,必须要重写父类中的纯虚函数,否者也属于抽象类
- virtual void func() = 0;//储蓄函数
- /*virtual void func() //普通的虚函数
- {
- }*/
-
- };
- class Son : public Base
- {
- public:
-
- };
- void func()
- {
- //Base b;//err 抽象类无法实例化对象
- //new Base;//err 抽象类无法实例化对象
- //Son s;//err 子类必须重写父类中的存续函数,否则无法实例化
- }
- void main()
- {
-
-
-
-
- }
- #include
- #include
- using namespace std;
- class Base
- {
- //纯虚函数
- //只要有一个纯虚函数,这个类称为抽象类
- //抽象类的特点
- //1、无法实例化
- //2、抽象类的子类,必须要重写父类中的纯虚函数,否者也属于抽象类
- public:
- virtual void func() = 0;//储蓄函数
- /*virtual void func() //普通的虚函数
- {
- }*/
-
- };
- class Son : public Base
- {
- public:
- virtual void func()
- {
- cout << "Son func被调用" << endl;
- }
-
- };
- void func()
- {
- //Base b;//err 抽象类无法实例化对象
- //new Base;//err 抽象类无法实例化对象
- //Son s;//err 子类必须重写父类中的存续函数,否则无法实例化
-
- Base* b = new Son;
- b->func();
- }
- void main()
- {
- func();
-
-
-
- }