带默认值的函数
调用函数时主要有以下两种情况:
一般情况下,函数的形参没有默认值,根据前后的代码段,确定形参的值:
int sum(int a , int b );
int main()
{
int a = 10;
int b = 20;
int ret = sum(a, b);
cout << "ret:" << ret << endl;
system("pause");
return 0;
}
int sum(int a, int b) //(int a = 10,int b)错,
{
return a + b;
}
形参带默认值的函数:
int sum(int a, int b=20)
{
return a + b;
}
int main()
{
int a = 10;
int b = 20;
int ret = sum(a, b);
//int ret = sum(a);(对)
//int ret = sum( , b);(错)没有这个种传参方式
cout << "ret:" << ret << endl;
system("pause");
return 0;
}
注意:
1.传参给默认值的时候,从右向左给(因为压栈时从右向左压)
2.调用效率的问题(少了一次“mov eax,dword ptr[ebp-8]”调用地址的过程),所以参数带默认值的效率高
3.定义时可以给出形参默认值,声明也可以给出形参默认值。
4.形参默认值只能给一次。
inline函数
- 定义:inline + 函数类型 +