1. 内联函数是什么?
内联函数和普通函数的区别: 普通函数运行时,进行函数调用,而内联函数,则是在编译时,使用函数代码代替了函数调用。
关键字:inline
inline int maxInt(int a,int b)
2.什么时候使用内联函数
如果执行代码的时间,比处理函数的调用机制要长,使用内联函数。
执行代码时间,远大于调用时间,使用普通函数。
2.内联函数和宏的区别
1.内联函数采用的是值传递,而宏定义采用的是对等替换.
2.宏是由预处理器对宏进行替代,而内联函数是通过编译器控制来实现的。而且内联函数是真正的函数,只是在需要用到的时候,内联函数像宏一样的展开,所以取消了函数的参数压栈,减少了调用的开销
3.编译器在调用一个内联函数时,会首先检查它的参数的类型,保证调用正确。然后进行一系列的相关检查,就像对待任何一个真正的函数一样。这样就消除了它的隐患和局限性。