1.默认函数参数
在C++中,函数的形参列表中的形参是可以有默认值的
语法: 返回值类型 函数名(参数=默认值) { }
1.如果某个位置参数有默认值,那么从这个位置往后,从左向右,必须都要有默认值
2.如果函数声明有默认值,函数实现的时候就不能有默认参数(声明和实现只能有一个有默认参数)
示例1:
int test(int a,int b=10,int c)
错误的,因为b有默认参数,所以后面的也必须得有默认参数
示例2:
int test(int a=10,int b=20)
int test(int a=10,int b=10)
{
return a+b+c;
}
错误的,声明和实现只能有一个有默认参数
2.函数占位参数
C++中函数的形参列表里可以有占位参数,用来做占位,调用函数时必须填补该位置
语法: 返回值类型 函数名(数据类型){ }
在现阶段函数的占位参数存在意义不大
3.函数重载
作用: 函数名可以相同,提高复用性
函数重载满足条件:
同一个作用域下;
函数名称相同;
函数参数类型不同 或者 个数不同 或者 顺序不同。
注意:函数的返回值不可以作为函数重载的条件
注意事项:
引用作为重载条件
函数重载碰到函数默认参数
总结:
函数重载不能调用成让系统出现二义性,即这个函数也可以调用,另一个函数也可以调用,会让系统不知道调用哪个