构造函数重载与互调
构造函数可以互调,但不能在函数体内,只能通过初始化列表的形式 构造函数中不要写业务逻辑 析构函数中不要 delete this ,这会导致析构递归,最终导致栈溢出 class Test{ public: Test(int a, int b, int c){ _a = a; _b = b; _c = c; } // 正确 Test(int a, int b):Test(a, b, 100){ } /* // 错误 Test(int a, int b){ _a = a; _b = b; Test(a, b, 100); // 此处只是产生一个临时对象,马上又被释放掉了,没有任何意义 } */ int getA(){ return _a; } int getB(){ return _b; } int getC(){ return _c; } private: int _a; int _b; int _c; }; int main( ) { Test t1(10, 20); cout << t1....