C++函数的默认值需要注意
1.默认值从右向左依次给出
2.不能重复声明函数的默认值
//error 默认值未从右向左依次给定
int sum(int a,int b=20,int c)
{
return a+b+c;
}
在调用sum(10,20)时,a的值不能确定,出现error。
//error 重复声明函数默认值
int sum(int a,int b,int c=10);
int sum(int a,int b,int c=10)
{
return a+b+c;
}
声明函数的默认值,函数实现时编译器会误以为默认值被修改了,error。
int sum(int a,int b,int c=10);
int sum(int a,int b=20,int c);
int sum(int a=10,int b,int c);
int sum(int a,int b,int c)
{
return a+b+c;
}
默认值从右向左依次给定,声明函数默认值未重复,函数调用正确。