内联函数(inline)
来源:互联网 发布:关于gps数据统计的书 编辑:程序博客网 时间:2024/06/17 17:56
1.inline
如果使用了inline修饰函数,则该函数称为内联函数。
编译器将使用相应的函数代码替换函数调用。即对于内联代码,程序无需跳到另一个位置处执行代码,然后再跳回来。
因此,内联函数的运行速度比常规函数稍快,但是代价是需要占用更多的内存,因为在有内联函数调用的地方,都是内联函数的代码拷贝。
所以,如果代码执行时间较短,而调用的时间比较长,并且该函数经常被调用,则使用内联函数就可以节省调用时间。
要使用内联函数,必须才需下述措施之一:
1).在函数声明前加上关键字inline
2).在函数定义前加上关键字inline
2.头文件与inline
c/c++可以在头文件中定义函数,但是若在头文件中定义函数,必须加inline修饰定义为内联函数
3.inline与宏
下面是一个计算平方的宏
#define SQUARE(x) x*xa=SQUARE(3) 结果是 a = 3*3 =9b=SQUARE(3+1) 结果是 b=3+1*3+1 = 7
a=3 c=SQUARE(a++) 结果是 c=a++*a++=12
只有第一个能正常工作,只有加上括号第二个才能正常工作
#define SQUARE(x) ((x)*(x))但是第三个仍然不行,应为简单的用后面的替代还是会加两次但是可以考虑用内联函数
inline int square(int a){return a*a;}c = square(a++)则可以得出c=9, a=4;
- 内联函数 inline
- 内联函数inline
- inline 内联函数
- 内联函数 Inline Function
- C++内联函数(Inline)
- 关于内联函数inline
- 内联(inline)函数~
- C++内联函数(Inline)
- inline 内联函数
- C++内联函数(Inline)
- 内联函数 -- inline总结
- inline内联函数
- C++内联函数(Inline)
- 内联函数(Inline Function)
- C++内联函数(Inline)
- CG_INLINE,inline 内联函数
- C++内联函数 inline
- 内联函数inline
- 说说今天的收获吧
- Oracle Instr() 妙用!--截取in的排序做为数据的排序
- eclipse恢复删除文件或文件夹
- OGRE中级教程四 Volume Selection and Basic Manual Objects
- OGRE中级教程五 Static Geometry
- 内联函数(inline)
- Kruscal算法 并查集求解最小生成树
- 设置passphraseless ssh
- OGRE中级教程六 Projective Decals
- 深入浅出FPGA-16-xilinx_zynq7000_EPP上一个简单实验(PS)
- sqlserver常用的语句
- 1:Win8 Metro应用开发的第一次学习1:创建一个 Metro 项目——Win8Y团队手把手教您Win8 Metro应用开发系列
- OGRE中级教程七 Render to texture (RTT)
- JSTL使用及EL运算符的使用