首页 > 代码库 > C++内联函数

C++内联函数

  经过一番折腾,又开始重新拾起C++。突然发现自己以前很多东西写的都很不规范,从最起码的代码层面也没有一个标准的格式。无规矩不成方圆,因此强迫自己要重视代码的编码格式。Google的C++代码规范很具有参考性,在此推荐一下,地址:http://pan.baidu.com/s/16dFKM

  在阅读Google代码规范过程中又看到了 C++的内联函数,将其知识点记录于此:

1. C++的内联函数好比 在C中的宏定义,省去了函数调用的过程,但是在函数调用处进行了展开。

2. 内联函数对于编译器来说只是个建议,编译器可以选择忽略这个建议

3. 内联函数应该在头文件中定义,这点不同于其他函数

4. 含有递归逻辑的函数不能定义为内联函数

5. 具有复杂控制流程的函数不能定义为内联

6. 内联inline定义会增加函数的体积,因此建议内联函数内的代码尽量短小

7. 在程序处于调试阶段时,内联函数不被实现

8. 内联函数要在函数被调用之前声明,关键字inline必须与函数定义体放在一起才能使函数成为内联函数,仅将inline放在函数声明前不起任何作用

9. 定义在类声明之中的成员函数将自动成为内联函数