1、第几个参数有默认值,则后面的参数都必须有默认值
// 正确的
int func1(int a, int b=1, int c=2){
return a+b+c;
}
// 错误的,c必须要有默认值
int func2(int a, int b=1, int c){
return a+b+c;
}
2、函数的声明和实现中只能有一个有默认参数。
// 函数声明
int func(int a, int b, int c);
// 函数实现,这里的例子是函数实现有默认参数,函数声明没有
int func(int a, int b=1, int c=2){
return a+b+c;
}