1. 函数默认参数
int func(int a, int b = 20, int c = 30)
{
return a + b + c;
}
语法: 返回值类型 函数名(形参 = 默认值){}
1.1如果传入了参数就用传入的值,如果没有就用默认参数值。
1.2 如果某个位置已经有了默认参数,那么从这个位置往后,从左到右都必须有默认值
1.3 如果函数声明有默认参数,函数实现就不能有默认参数。声明和实现只能有一个拥有默认参数。
2. 函数占位参数
语法: 返回值类型 函数名 (数据类型){}
void func(int a, int)
{
}
void func(int a, int = 10)
{
}
3. 函数重载
函数重载满足条件:
l 同一作用域下
l 函数名相同
l 函数参数类型不同或者个数不同或者顺序不同
注意:函数返回值不可以作为函数重载的条件
4. 函数重载的注意事项
4.1 引用作为重载的条件
4.2 函数重载碰到默认参数:避免二义性