1.8 内联函数
在函数声明或定义时,将inline关键字加在函数返回类型前面就是内联函数
#include <iostream>
using namespace std;
inline int add(int x, int y){ //内联函数
return x+y;
}
int main(void) {
int ret = add(3,5); // 编译器可能翻译成 "int ret = 3+5;" 来运行
return 0;
}
不需要建立函数调用时的运行环境,不需要进行参数传递,不需要跳转,效率更高。
注意:
- inline关键字只是建议编译器做内联优化,编译器不一定做内联
- 内联函数的声明或定义必须在函数调用之前完成
- 一般几行代码适合作为内联函数,像递归函数 包含循环 swich goto复杂逻辑的函数不适合做内联