内联函数在声明和定义时要在前面加上inline
然后在后面跟函数的返回类型。
话不多说先举一个例子:
#include<iostream>
using namespace std;
inline int func(int number1,int number2)
{
int result;
result=number2+number1;
return result;
}
int main()
{
int a=1,b=2;
int r;
r=func(a,b);
cout<<r<<endl;
return 0;
}
这个代码的运行结果相比大家都很清楚。
但是似乎这个内联函数用不用好像没有什么区别啊
简单来说,内联函数存在的作用是提高程序的运行效率。
内联函数通过在每一个调用它的地方换成了函数体本身来进行替换,而不是用通常的函数调用方法使用这个函数。
优点是可以提高程序的运行效率,但缺点是较长的函数体会拖慢程序的运行速度。
因此,对于一些较为关键,且函数体较短(递归函数除外),大约在十行以内的函数,使用内联函数是较好的。
此外,需要注意以下几点,
内联函数中不能使用循环语句和switch语句,
且内联函数的声明必须在函数的第一次调用以前
一点自己的理解,有错误的地方欢迎各位指正。