内联函数
1.内联函数与常规函数的区别不在于编写方式,而在于被调用的运行机制不同。
2.内联函数中,编译器使用函数代码替换(复制)函数调用。
「可以类比但不同于宏替换」
3.内联函数优点:执行效率高
4.如何使用内联特性?
在函数声明或定义前使用关键字inline
5.内联函数只会出现在编译器中,经编译器最终形成的可执行文件中不会存在内联函数
6.若设定某函数为内联函数,则其定义与声明前均需要加入inline关键字
7.定义为inline函数后函数变为定义,而非声明,应将整个函数放在.h文件中
8.事实上,函数是否内联很大一部分取决于编译器,若内联函数效率高,则编译器会自动在前面加inline关键字;
若加inline关键字的函数实际上效率反而更低,编译器则可能会将inline关键字删去
9.建议在只有返回值或赋值语句的函数前加inline,若函数中出现循环、递归等复杂语句则禁用inline