c++头文件注意事项
- 头文件是你(定义头文件的人)和代码使用者之间的合同( 非强制)
- 编译器通过强制使用者在使用前声明函数来落实该合同(强制)
- 在所有调用(使用者)的地方,及定义(创造者)的地方都要include头文件
- 如果有多重使用者,仅被上级的直接使用者包含一次即可
- 预处理时将.h和.cpp文件连接形成编译前文件
- .h文件中只能有声明,不可有定义,否则抄进.cpp后会出现重复定义的错误
- 头文件通常包含只能被定义一次的实体,如类、const变量
- ifndef/define/endif的作用:当多个文件重复包含一个头文件时,提高编译效率,同时避免重复包含导致错误(类的重定义)。建议所有头文件中都要写上
参考: