当一个类没有定义构造函数时,编译器才生成默认构造函数。
当定义类对象没有提供初始化式时,使用默认构造函数进行初始化。
默认构造函数的使用
对于一个类X,如果一个构造函数的第一个参数是下列之一:
且没有其他参数或其他参数都有默认值,那么这个函数是拷贝构造函数。
拷贝构造函数不能由成员函数模版生成.
1 class Widget 2 { 3 ... 4 private: 5 Widget(const Widget&); // 声明为私有 6 Widget& operator=(const Widget&); 7 }
原文:http://www.cnblogs.com/TaoyzDream/p/3688331.html