构造函数默认参数问题
studentpulic student3(78,,89,"钟",56,89)
我设第二个参数为空,让构造函数调用默认值,这样为仕么不可以?
c++
[解决办法]
有默认值的参数要放在最后面
[解决办法]
// 默认参数必须是参数列表的最后一个
studentpulic::studentpulic(int a, int b, intc, char* str, bool def = false) {}
[解决办法]
不给参数不是参数为空的意思,参数为空的意思是给个为空的参数
[解决办法]
让构造函数调用默认值,这样为仕么不可以?
因为那样不符合规范,为了这个规范,可是争吵得很厉害的,吵了很久,才有 C++11 规范出台的。然后现在的C++编译器,都向这个C++11看齐。你说的或许有理,但写编译器的人却不认可,也枉然。