创作不易,本篇文章如果帮助到了你,还请点赞 关注支持一下♡><)!!
主页专栏有更多知识,如有疑问欢迎大家指正讨论,共同进步!
c++系列专栏:C/C++零基础到精通给大家跳段街舞感谢支持!ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ
c语言内容:
专栏:c语言之路重点知识整合
【c语言】全部知识点总结
内联函数在C++中是一种特殊的函数,内联函数的代码在编译时会在调用的位置展开,而不是在运行时调用函数。
这样做可以消除函数调用的开销,从而提高程序的执行效率。
相当于define宏替换
内联函数可以分为:
把函数体也写在类内就是内联函数,只声明不是
#include
class Test
{
public:
void fun()
{
std::cout << "隐式内联函数 Test::fun()" << std::endl;
};
void fun2();
};
inline void Test::fun2()
{
std::cout << "显式内联函数 inline void Test::fun2() " << std::endl;
};
int main()
{
Test t;
t.fun();
t.fun2();
return 0;
}
内联函数相比于宏替换的优点:
内联函数相比于普通函数:减少函数调用时的开销,提高程序的执行效率。
由于内联函数以代码膨胀为代价,每个调用内联函数的地方都会插入一份函数的代码,内联函数可以看作是使用空间换时间来提升运行速度
并且使用inline
关键字只是建议编译器将函数作为内联函数处理,编译器可能会将不适宜的内联函数取消内联,此时内联函数被编译器认为是普通的函数。
如果内联函数的代码体判断循环较多,逻辑复杂,此时执行此内联函数将会比调用普通函数开销更大。
大家的点赞、收藏、关注将是我更新的最大动力! 欢迎留言或私信建议或问题。 |
大家的支持和反馈对我来说意义重大,我会继续不断努力提供有价值的内容!如果本文哪里有错误的地方还请大家多多指出(●'◡'●) |