inline函数
2015-10-07 00:00
281 查看
摘要: inline函数
使用inline定义的函数体,在调用inline函数的地方不再是 使用 函数的调用机制;
而至在 编译时, 直接把源码编译到调用处, 代码顺序执行,不在调用call,开辟栈空间。
inline 关键字放在函数声明处不会起作用:
2. inline 函数的效率
1. 采用内联函数可以有效避免函数调用的开销,程序执行效率更高。使用内联函数的缺点就是,如果被声明为内联函数的函数体非常大,则编译器编译后程序的可执行码将会变得很大。
2. 如果函数体内出现循环或者其它复杂的控制结构的时候,这个时候处理这些复杂控制结构所花费的时间远大于函数调用所花的时间,因此如果将这类函数声明为内联函数意义不大,反而会使得编译后可执行代码变长。
3. 通常在程序设计过程中,我们会将一些频繁被调用的短小函数声明为内联函数。
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 不建议在类中使用
相关文章推荐
- C++中inline函数详解
- inline 函数的深入解析
- 内敛函数(inline函数)
- 欢迎使用CSDN-markdown编辑器
- [读书笔记] 深入探索C++对象模型-第四章-Function语义学(下续)
- 深度探索C++对象模型 【第四章2】
- C++_inline函数(内嵌函数)
- inline学习笔记
- inline函数(内联)
- C++ inline函数和template函数
- 为什么inline函数应该在头文件中定义?
- C语言inline函数
- cpp类的初始化参数列表
- 析构函数 this 静态成员变量 静态成员函数 const friend
- 静态编练 动态编练
- TF-IDF与余弦相似性的应用(一):自动提取关键词
- 美媒称中国手机APP"烧钱时代"面临终结
- 页面跳转学习笔记
- Js如何监视Iframe内部地址改变
- Ubuntu下安装Docker