构造函数中参数赋值导致缺少参数

错误: default argument missing for parameter 2 of

如果参数赋值不是全都有,那么需要把赋值的参数放到后面,同时,在构造函数中只需要把未初始化赋值的参数再传值,即可以完成正确构造。
代码示例如下:

#include<iostream>
using namespace std;
class parameter_number
{
public:
	int a;
	char b;
	parameter_number( char b_char,int a_num = 1):a(a_num),b(b_char){}
	~parameter_number(){}
};
int main(){
	char b = 'a';
	parameter_number A(b);
	cout<<A.a<<" "<<A.b<<endl;
	return 0;
}
posted @ 2018-08-03 14:36  zengzhaocheng  阅读(239)  评论(0编辑  收藏  举报