1. 什么是内联函数?
就是使用了关键字inline
的函数,如
inline int max(int a, int b){
2. 内联函数有什么作用?
C++在调用函数时,会执行一系列的操作:
将参数push到堆栈中
将返回地址push到堆栈中
准备返回值
将所有push到堆栈的东西都pop出来
这一系列的操作无疑增加了延迟,inline
函数就是把函数内容嵌入到函数调用的地方,但仍然保持函数的独立性(即函数有自己的空间)。
int main(){
在使用inline
之后,上面的代码在执行过程中,跟下面的代码是一样的:
int main(){
3. 如何使用内联函数?
内联函数跟普通函数的使用方式有所不同,内联函数的声明和定义不能分开在不同的文件,即都要在同一个文件中