缺省参数也可以叫默认参数,即使使用的人不传参数,参数也有一个默认值
传了参数以传过去的参数为主。
全缺省,即所有的参数都有默认的值
void Func(int a = 1, int b = 2,int c=3)
{
printf("%d ", a);
printf("%d ", b);
printf("%d ", c);
printf("\n " );
}
int main()
{
Func();
Func(10);
Func(10,20);
Func(10, 20,30);
return 0;
}
对于上面的结果如下,这里需要注意一点,传参的时候必须从左到右显示传参,不能跳过第一个参数不传,直接传第二个参数。
半缺省,只有部分的参数有默认的值。半缺省必须从右往左给缺省值。
正确例子如下
错误例子如下
注意!!!
1.半缺省必须从右到左依次来给出,不能间隔着给。
2.缺省参数不能在函数声明与定义中同时出现,缺省参数在给默认值的时候在函数声明的时候给出,这主要是怕我们声明与定义给的默认参数值不一样。
3.缺省值必须是常量或者全局变量,就是说默认的值必须是常量或者全局变量。