c++的函数里支持了一些新东西:占位和默认值。
默认值
c++中函数的形参可以有默认值,在传入值的时候可以不传入这个值
void func(int a , int b , int c = 10)
{
}
int main()
{
func(1 , 2);
}
需要注意的地方
- 一旦有一个形参有了默认值,他后面的形参都必须有默认值
int func(int a , int b = 10 , int c = 20)//正确
int func(int a = 10 , int b , int c = 20)//错误
2.如果一个形参有了默认值,但是又传入了一个值,就用传入的那一个
int func(int a , int b = 10 , int c = 20)
{
return a + b + c;
}
int main()
{
cout << func(10) << endl;
cout << func(10 , 20) << endl;
}
结果是
40
50
-
函数形参的默认值在声明和实现时只能写一次,即在声明中写了在实现中就不能写,反之亦然。
int func(int a , int b , int c); //声明
int func(int a , int b = 10 , int c = 20)// 实现
{
return 1;
}
占位
在函数的形参中可以只写个数据类型占位,而且可以传入值。
void func(int a , int)
{
}
int main()
{
func(10 , 10);
}