c++内联函数
来源:互联网 发布:淘宝网商城男裤 编辑:程序博客网 时间:2024/06/16 09:22
c++内联函数与常规函数的主要区别不在于编写方式,而在于编译器如何将它们组合到程序中.
学过编译原理的应该知道,程序调用函数必须跳转到函数的地址执行函数,执行完毕后返回到调用函数的地方,所以每次执行常规函数都需要进行跳转.执行到函数调用指令时,程序将在函数调用后立即储存该指令的内存地址,并将函数参数复制到堆栈中,执行完毕再跳转回去,来回跳跃并记录跳跃地址需要一定的开销.
内联函数的优点就是,执行内联函数和常规函数不同的是,内联函数将直接执行函数,不需要进行跳转.因此内联函数的速度比常规函数要快,但代价是内联函数需要花费更多的内存,因为每执行一次就相当于执行了函数代码的副本.
如果执行函数代码的时间比处理函数调用时间长的话,节省时间较少.如果代码执行时间很短的话,内联函数的调用可以节省很多时间.
执行代码的时间我的理解就是运行这个函数所需要的时间,处理函数调用的时间我觉得就是在执行代码时候所需要做的各种跳转时间,细想一下.内联函数就是节省处理函数调用时间的,所以如果处理函数调用时间比较长,执行代码时间比较短的话,可以优先考虑使用c++内联函数
参考:C++ Primer Plus(第六版)
0 0
- C语言内联函数
- C++:内联函数
- C 内联函数
- c++-inline 内联函数
- C语言内联函数
- C++_inline内联函数
- 【C++】内联函数,inline
- C++---函数内联
- C 内联函数
- [C++]内联函数
- c/c++内联函数
- C++_内联函数
- c++inline内联函数
- C++:内联函数
- 【C++】内联函数
- C中的内联函数行为
- linux c/c++ 内联函数
- C中的内联函数行为
- SQL优化
- JUC中线程池的使用
- java.util.UUID通用唯一识别码的介绍
- 七牛文件上传回调以及解析回调参数
- 最准确的单点登录SSO图示和讲解(有代码范例)|手把手教做单点登录(SSO)系列之二
- c++内联函数
- tensorflow各版本间踩过的坑
- struts2文件上传大小限制问题小结
- 重新学习js
- Bootstrap+jquerry开发网站首页
- Android 计时器的简单实现
- 多文件的Makefile模板
- 关于Myeclipse 10版本的破解问题的解决
- 【搜索】洛谷 P1465 序言页码 Preface Numbering