C++ 纯虚函数

#include <iostream>
#include <vector>
using namespace std;


class reslut
{
public:
    reslut()
    {
    }
    int get_a()
    {
        return a;
    }
    int get_b()
    {
        return b;
    }
    void set_a(int x)
    {
        this->a = x;

    }
    void set_b(int y)
    {
        this->b = y;

    }
    ~reslut()
    {
    }
    virtual int test() = 0;
  
protected:
    int  a;
    int  b;
};


class AA : public reslut  
{
public:
    int test()   //重写父类的纯虚函数
    {
        return a + b;
    }

};

class BB :public reslut
{
public:
    int test()  //重写父类的纯虚函数
    {
        return a*b;
    }

};

int main()
{
    AA test1;
    
    test1.set_a(1);
    test1.set_b(2);
   int reslut1= test1.test(); 

    BB test2;

    test2.set_a(1);
    test2.set_b(2);
    int reslut2 = test2.test();

    return 0;
}

 当类中有纯虚函数时,该类无法被实例话,只能通过子类继承,并重写该纯虚函数时,该类中的其他函数以及成员才可以通过实例化子类后,使用父类的成员以及函数

posted @ 2020-02-20 16:18  神迹丶  阅读(490)  评论(0编辑  收藏  举报
网站已运行: