看看google的C++代码规范和风格,学习一下。逐个来,今天先看:头文件
笔记如下:
1)能用前置声明的地方尽量不使用 #include. 当一个头文件被包含的同时也引入了新的依赖, 一旦该头文件被修改, 代码就会被重新编译. 如果这个头文件又包含了其他头文件, 这些头文件的任何改变都将导致所有包含了该头文件的代码被重新编译. 因此, 我们倾向于减少包含头文件, 尤其是在头文件中包含头文件.
前置声明是为了降低编译依赖,防止修改一个头文件引发多米诺效应。
2)只有当函数只有 10 行甚至更少时才将其定义为内联函数. 这个大家都知道,内联函数的最大优点就是可以提高程序的运行效率,当函数被声明为内联函数之后, 编译器会将其内联展开, 而不是按通常的函数调用机制进行调用。, 性能关键的函数, 鼓励使用内联。
3)include的路径及顺序 使用标准的头文件包含顺序可增强可读性, 避免隐藏依赖: C 库, C++ 库, 其他库的
.h, 本项目内的
.h.
一个推荐的顺序如下:
-
- dir2/foo2.h (优先位置, 详情如下)
- C 系统文件
- C++ 系统文件
- 其他库的 .h 文件
- 本项目内 .h 文件
说实话,在此之前我还真是没有注意过这方面,需要哪个头文件就包含哪个。今天看了google的规范,颇有收获,这样做美观是一个方面,更有效的减少隐藏依赖,这点很不错。