是否有可能具有1个构造具有作为默认的构造函数,如果一个参数没有传入的选项。默认构造函数可以选择参数?
实施例,代替具有2层构造,其中1是默认的构造,另一种是用于初始化一个构造传入的数字,是否有可能只有1个构造函数,如果传入一个值,将该值设置为成员函数,并且如果没有值传入,则将成员函数设置为数字。
例如:
WEIGHT.H文件:
class Weight
{
public:
Weight() { size = 0; }
Weight(int a) : size(a) {}
int size;
};
Main.cpp的文件:
int main(void)
{
Weight w1;
Weight w2(100);
}
我一直工作在不同的学校项目,它们都需要有不同类型的构造函数,我想知道是否有一种方法只有一次,这样可以节省时间。 感谢您的帮助。
搜索“默认参数”。 – chris
如果您仍然使用当前的默认构造函数,则初始化初始化列表中的所有成员变量通常是更好的做法。因此'Weight():size(0){}'是最好的。 – masaers