如果程序员没有定义,那么编译器会默认隐式为你创建一个copy构造函数,一个copy赋值操作符,一个析构函数.另外如果你没有声明任何构造函数,编译器会为你声明一个default构造函数. 但是只有当这些函数被用到时,他们才会被创建.例如Empty a(b),会创建copy构造函数. [cpp] view plain copy class Empty { Empty(){...}//default构造函数,如果没有声明任何构造函数,编译器会自动声明 Empty(const Empty& rhs){.…