c++工程头文件引用规范
程序员文章站
2024-01-14 21:03:52
...
c++中头文件引用规范及说明
头文件类型说明
这里将一个源文件所能引用的头文件类型分为四类:
- 源文件对应自身头文件
- c标准库头文件
- c++标准库头文件
- 工程内其他头文件
对于工程内部自己定义的头文件,需要用 #include “xxx.h”,而标准库则使用 #include <xxx.h>
工程中头文件的引用顺序应当安装上述顺序,并且每一类头文件之间各一行,例如:
假设当前cpp文件对应的头文件为 my_file.cpp,其对应的头文件的工程目录为 src/my_file.h。
#ifndef PROJECT_SRC_MY_FILE_H_
#define PROJECT_SRC_MY_FILE_H_
#include "src/my_file.h"
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
#include <vector>
#include <mutex>
#include "src/util/util.h"
void foo();
#endif // PROJECT_SRC_MY_FILE_H_
头文件中 #ifndef 使用
头文件中 #ifndef 后面的宏命名规则应当为: {工程名} _ {头文件的路径} _ {头文件名} _ H,文件最后 #endif 需要给出注释表示是哪一个宏的end
这种规范作用有两个:
1、 防止头文件被重复引用:多个文件同时引用同一个头文件,则编译会重复编译该头文件多次,如果形成闭环则会无限引用下去,造成编译问题
2、 防止变量名重复定义:如果有两个文件同时都引用的该头文件,则该头文件中的变量会被定义两次,编译会报错
参考:
https://zh-google-styleguide.readthedocs.io/en/latest/
https://blog.csdn.net/baidu_27690801/article/details/95016120