C++内联函数:内联函数在函数声明前面加上关键字inline 就可以了,实质是为了提高函数的执行效率
在VC++中可以用_forceinline 代替inline 关键字.
例:
inline int Max (int a, int b)
{
if(a >b)
return a;
return b;
}
增加了 inline 关键字的函数称为“内联函数”。
内联函数和普通函数的区别在于:当编译器处理调用内联函数的语句时,不会将该语句编译成函数调用的指令,而是直接将整个函数体的代码插人调用语句处,就像整个函数体在调用处被重写了一遍一样。
GNU C89/C90中对于inline关键字的解释:
inline:在当前编译单元内,建议编译器在当前编译单元内展开函数体(是否展开取决于编译器). 但同时编译器会对该函数生成一份普通函数的代码,在其他编译单元内可以调用,与普通的extern函数调用无异.