美文网首页
C++继承,构造子类对象时,需要调用父类的构造函数

C++继承,构造子类对象时,需要调用父类的构造函数

作者: 司马捷 | 来源:发表于2016-08-05 15:38 被阅读66次

    这里是一个需要注意的小常识
    /**
    * 在子类对象构造时,需要调用父类构造函数对其继承得来的成员进行初始化
    在子类对象析构时,需要调用父类析构函数对其继承得来的成员进行清理
    */

    class A {
    public:
        A(int a){
            this->a = a;
        }
        
    protected:
        int a;
    };
    
    class B :public A{
    public:
        /**
         *  在子类对象构造时,需要调用父类构造函数对其继承得来的成员进行初始化
            在子类对象析构时,需要调用父类析构函数对其继承得来的成员进行清理
         */
        B(int a,int b):A(a){
            this->b = b;
        }
        void printAB(){
            cout<<"a:"<<a<<"  b:"<<b<<endl;
        }
     
        
    private:
        int b;
    };
    
    
    int main(int argc, const char * argv[]) {
        // insert code here...
        std::cout << "Hello, World!\n";
        
        B b(10,20);
        
        b.printAB();
        return 0;
    }
    
    

    相关文章

      网友评论

          本文标题:C++继承,构造子类对象时,需要调用父类的构造函数

          本文链接:https://www.haomeiwen.com/subject/kjghsttx.html