什么是内联函数
使用inline修饰函数的声明或者实现,可以使其变成内联函数 (建议声明和实现都增加inline修饰)
特点
1.编译器会将函数调用直接展开为函数体代码
2.可以减少函数调用的开销
3.会增大代码体积
注意 尽量不要内联超过10行代码的函数
有些函数即使声明为inline,也不一定会被编译器内联,比如递归函数
适用于函数体代码较小且频繁调用的函数
#include <iostream>
using namespace std;
inline int sum(int v1, int v2) {
return v1 + v2;
}
int main() {
int c=sum(10,20);
cout << c << endl;
getchar();
return 0;
}
关闭编译器优化
右击属性
内联之前
内联之后
宏
内联函数和宏,都可以减少函数调用的开销
对比宏,内联函数多了语法检测和函数特性