一、函数默认值:
函数中的形参可以给予默认值,若调用函数时没有给予实际参数,那么会自动调用函数的默认值。
如:
int fun(int i, int j=5)
{
int x = i+j;
return x;
}
int main(){
int i = 6;
i = fun(i);
cout<<"i="<<i<<endl;
}
//输出 i = 11
注意:
1.函数默认值必须写在参数表最右端。
2.声明时写默认值,定义时可以不写默认值,但若声明时不写默认值,定义时写默认值则会报错。且若声明时写默认值,定义时也写默认值,有些编译器会不通过。
二、函数重载:
c++中在相同作用域内,可以拥有 相同的函数名 但 参数个数 高一 参数类型 或 类型 不同的函数,我们称之为函数重载。
注意:
1.函数名的称必须相同。
2.参数列表中的形参必须不同(个数不同、类型不同、参数排列顺序不同等)。
3.函数的返回类型可以相同也可以不相同。
4.仅仅返回类型不同不足以成为函数的重载。
三、内联函数:
对于代码块较短的函数,可以定义为内联函数,则编译器处理调用内联函数的语句时,不会将该语句编译成函数调用的指令,而是直接将整个函数体的代码插入到调用语句处,就像整个函数体在调用处被重写了一遍一样。
注意:
1.关键字inline必须与函数定义体放在一起才能实现函数的内联,若只放在声明处,不起任何作用。
2.最好只有当函数只有 10 行甚至更少时才将其定义为内联函数.