C++基础之内联函数
来源:互联网 发布:设循环队列用数组 编辑:程序博客网 时间:2024/06/11 12:44
刚刚不停的翻找网页和自己试用来总结一下什么是内联函数,我写了内联函数,用反汇编来看和普通函数没有区别
内联函数的本质:就是函数
调用函数中系统做了什么:开辟栈空间、保护现场、传递参数、控制程序转移等等……这些都要花费时间
内联函数的由来:有一些函数,代码少,调用频繁,花费时间多了,效率低了,写成内联就会调用速度快了
内联函数的标识符:inline(实现的标识符,不是声明的,代码示例中理解)
内联函数的忌讳:不写循环、开关、递归这些语句
内联函数的有效性:1.标识符和函数体在一起有效;2.代码少有效(多少才算有效没有搜到),代码多了系统会当作内联失败,当作普通函数调用(不会报错)
内联BUG:当你内联函数中有静态变量,而内联失败,可就不止一个静态变量了
代码示例:
普通的内联函数:
inline void aa(int i){
i++:
}
理解是实现的标识符不是声明用的(标识符没有和函数体在一起,无效)
inline void aa(int i);
main(……)
void aa(int i)
{ i++;}
我们经常用内联函数,只是你可能不知道而已:类内部的函数,避开上面的忌讳,成员函数就是内联函数,不论有还是没有标识符
对于我学到的是:不去管成员函数是不是内联函数,写的一些小的函数且经常要用的函数,没有放在类里,就给加个标识符
(PanPen120原创 如有建议 请留言)
0 0
- C++基础之 "内联函数"
- C++基础之内联函数
- 【基础C&C++】内联函数&宏定义
- 【C++基础之十五】内联函数
- C++基础之内联函数inline
- 【C++】:C++之内联函数(inline)
- C++基础--内联函数
- C++基础--内联函数
- C++基础---内联函数
- C++基础--内联函数
- 函数之内联函数
- C语言内联函数
- C++:内联函数
- C 内联函数
- c++-inline 内联函数
- C语言内联函数
- C++_inline内联函数
- 【C++】内联函数,inline
- 在Sandbox中调用系统工具的问题
- Android 4.4 apk安装到桌面生成icon过程
- 【图算法之二分图】HDU 1068---Girls and Boys
- onInterceptTouchEvent和onTouchEvent调用时序
- 用 DBMS_SCHEDULER 代替 DBMS_JOB
- C++基础之内联函数
- 电容参数:X5R,X7R,Y5V,COG 详解
- 使用HAProxy、PHP、Redis和MySQL支撑每天上亿请求的架构细节
- oracle学习之体系结构2
- PHP-Date()
- iOS实用技巧 - AFNetworking2安全的使用自签证书访问HTTPS
- iOS,初始篇(一)
- 递归 数字排列
- Python 面试题集合