美文网首页
构造函数

构造函数

作者: qyfl | 来源:发表于2017-12-15 22:35 被阅读0次

    构造函数

    • 在 class 中,可以不写默认构造函数,编译器会默认生成。
    class A {
    public:
        A(int a) { ... }
        // 默认生成的构造函数什么都不做
        //A() { }
    };
    
    • 在构造函数中,尽量使用初始化列,但是会有陷阱,具体在进阶文档里写。
    class A {
    private:
        int a, b;
    
    public:
        A(int x, int y): a(x), b(y) { ... }
    
    };
    
    • 在 class 继承了别的 class 的时候,如果需要调用基类的非默认构造函数(有参数的),需要显示的写在初始化列里。否则,在创建派生类对象的时候,编译器会默认调用基类的默认构造函数,编译器不会报错,但是程序会出错。
      内联函数
    class A {
    public:
        A() { ... }
        A(int a) { ... }
    };
    
    
    class B : public A {
    public:
        B(int a) : A(a) { ... }
    };
    
    

    相关文章

      网友评论

          本文标题:构造函数

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