首先,需要明白构造函数是用来做什么?当创建类对象的时候,编译器为对象分配内存空间,并自动调用该构造函数,由构造函数完成数据成员的初始化工作。
其次,大家都必须明白和记得的一点是: 一个类只能有一个默认构造函数。
两种方式的默认构造函数:
- 定义一个无参数的构造函数;
- 定义有参数默认值的构造函数。
只要保证,上面这两种方式只出现其一,保证不同时出现即可。
不然,将会抛出以下错误: error: call of overloaded 类名() is ambiguous
首先,需要明白构造函数是用来做什么?当创建类对象的时候,编译器为对象分配内存空间,并自动调用该构造函数,由构造函数完成数据成员的初始化工作。
其次,大家都必须明白和记得的一点是: 一个类只能有一个默认构造函数。
两种方式的默认构造函数:
只要保证,上面这两种方式只出现其一,保证不同时出现即可。
不然,将会抛出以下错误: error: call of overloaded 类名() is ambiguous