博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
inline函数
阅读量:6287 次
发布时间:2019-06-22

本文共 669 字,大约阅读时间需要 2 分钟。

hot3.png

1.  inline的函数定义

  inline 内联函数:

  使用inline定义的函数体,在调用inline函数的地方不再是 使用   函数的调用机制

   而至在  编译时, 直接把源码编译到调用处, 代码顺序执行,不在调用call,开辟栈空间

  inline 关键字放在函数声明处不会起作用:        

inline void swap(int &a, int &b);void swap(int &a, int &b){    int temp = a;    a = b;    b = temp;}

inline 关键字应该与函数体放在一起:

void swap(int &a, int &b);inline void swap(int &a, int &b){    int temp = a;    a = b;    b = temp;}

2.  inline 函数的效率

1.  采用内联函数可以有效避免函数调用的开销,程序执行效率更高。使用内联函数的缺点就是,如果被声明为内联函数的函数体非常大,则编译器编译后程序的可执行码将会变得很大。

2. 如果函数体内出现循环或者其它复杂的控制结构的时候,这个时候处理这些复杂控制结构所花费的时间远大于函数调用所花的时间,因此如果将这类函数声明为内联函数意义不大,反而会使得编译后可执行代码变长。
3.  通常在程序设计过程中,我们会将一些频繁被调用的短小函数声明为内联函数。

3.  inline 不建议在类中使用

转载于:https://my.oschina.net/badboy2/blog/513897

你可能感兴趣的文章
iOS BLE 开发小记[4] 如何实现 CoreBluetooth 后台运行模式
查看>>
Item 23 不要在代码中使用新的原生态类型(raw type)
查看>>
为网页添加留言功能
查看>>
JavaScript—数组(17)
查看>>
Android 密钥保护和 C/S 网络传输安全理论指南
查看>>
以太坊ERC20代币合约优化版
查看>>
Why I Began
查看>>
同一台电脑上Windows 7和Ubuntu 14.04的CPU温度和GPU温度对比
查看>>
js数组的操作
查看>>
springmvc Could not write content: No serializer
查看>>
Python系语言发展综述
查看>>
新手 开博
查看>>
借助开源工具高效完成Java应用的运行分析
查看>>
163 yum
查看>>
第三章:Shiro的配置——深入浅出学Shiro细粒度权限开发框架
查看>>
80后创业的经验谈(转,朴实但实用!推荐)
查看>>
让Windows图片查看器和windows资源管理器显示WebP格式
查看>>
我的友情链接
查看>>
vim使用点滴
查看>>
embedded linux学习中几个需要明确的概念
查看>>