定义为inline函数之后,会省去函数调用的开销,直接嵌套汇编代码,取代函数调用,提高效率
1、inline函数不要超过10行代码,且不能包含循环、switch、if语句。
2、在一个c文件中定义的inline函数是不能在其它c文件中直接使用,google推荐把inline函数定义在**-inl.h头文件中。
3、不要过度使用inline函数定义,尤其对大函数来说
1 inline只是个编译器建议,编译器不一定非得展开Inline函数。
例如:Inline函数地址引用
inline在递归函数中使用
2 inline必须用于函数定义,对于函数声明,inline不起作用
例如: inline max(int,int); //没有Inline作用
只有 inline max(int a,int b)
{
......
}
才有用。
3 inline定义的函数 和 宏定义一样,只在本地文件可见。所以建议Inline定义的函数放在头文件中