c++之内联函数

函数声明或者实现前加inline

内联函数相当于直接把函数体内的代码替换调用处代码。
为什么要使用内联函数?
函数调用是有代价的,每次调用函数就会开辟占空间。

/*
什么时候使用inline
1.当函数体积不大
2.频繁调用该函数
*/
inline int sum(int a,int b){
}

注意:
内联函数尽量不要超过十行
有些函数就算声明成内联函数也不会被编译器编译为内联函数,比如递归函数。

内联汇编:

image.png

用ida反汇编 release

对于func 和sum函数如果不是内联,可以在functions window看到函数名。


image.png

如果对func和sum内联声明。


image.png
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 内联的疑惑 写这篇文章的初衷源自于对netdata项目把C函数声明为static inline的用法不解。从语言特...
    typesafe阅读 6,630评论 1 1
  • 内联函数(inline function) 使用inline修饰函数的声明或者实现,可以使其变成内联函数。一般建议...
    ducktobey阅读 2,924评论 0 0
  • 这是16年5月份编辑的一份比较杂乱适合自己观看的学习记录文档,今天18年5月份再次想写文章,发现简书还为我保存起的...
    Jenaral阅读 7,893评论 2 9
  • 1 内联函数与宏定义 C++ 语言支持函数内联,其目的是为了提高函数的执行效率(速度)。在C程序中,可以用宏代码提...
    woshishui1243阅读 4,334评论 0 0
  • 不管怎样,我仍希望你快乐,哪怕那种快乐不是由我而起的 2014年8月24日,第一次和你见面,你衣着清秀,带一副黑色...
    空白路阅读 3,688评论 0 4