我们都知道,程序调用函数后,需要做几个工作:保存现场寄存器,到新的位置执行,复制实参,执行完后回到原地并恢复现场。
这样其实需要花费不少时间,内联函数就是正对这个问题而产生的。
在函数返回类型前加上 inline 关键字就标明该函数是内联函数。
其特点是在程序编译过程中就将函数体复制到函数调用处,大大提高了程序执行效率。
根据这个特点,也要注意两点:
(1) 内联机制适用于小的、只有几行的而且经常被调用的函数。一个1000多行的函数也不太可能在调用点内联展开。
(2) 内联函数应该放在头文件中定义。!!!
因为内联函数的定义对编译器而言必须是可见的,以便编译器能够在调用点内联展开该函数的代码。此时,仅有函数原型是不够的。