1、类的设计者没有给类定义构造函数时,系统会给类一个隐式的默认构造函数。这样程序员在声明类的对象时无法像结构初始化那样初始化该对象,而只能通过对象的成员函数的方法给数据成员赋值。
2、类的设计者给类提供了一个构造函数,这个构造函数没有给类的数据成员传递参数,那么在声明对象时将会出错, 这样做的原因可能是想禁止创建未初始化的对象。
3、如果要创建对象,而不显式的初始化,则必须定义一个不接受任何参数的默认构造函数。定义默认构造函数的方式有两种。一种是给已有的构造函数所有参数提供默认值,另一种方法是通过函数重载来定义另一个构造函数——一个没有参数的构造函数。
————————参考自C++primerplus