如果从某个位置有了默认值,那么从这个位置开始,从左往右都必须得有默认值;
下面的写法是正确的:
void func(int a, int b=10, int c=20){ }
void func(int a, int b, int c=20){ }
但这样写不可以:
void func(int a, int b=10, int c=20, int d){ }
void func(int a, int b=10, int c, int d=20){ }
总结:
1.函数的形参列表中的形参是可以有默认值的;
2.如果从某个位置有了默认值,那么从这个位置开始,从左往右都必须得有默认值;
3.如果函数声明有默认参数的情况下,函数实现就不能有默认参数;
函数声明和函数实现只能有一个有默认值;