博客迁移已迁移到https://www.guyuemeng.com
头文件引用(#include)
头文件的类别大致可以分为以下几类:标准库STL、准标准库Boost、针对C++语言的第三方库(ACE等)、基于C++语言的第三方工具库(SQLite等)、同软件下,其他solution提供的接口、同solution下,其他project提供的接口、同project下,上一级目录提供的接口、同project下,当前目录提供的接口、同project下,子目录提供的接口。对于cpp文件,尚存在一种更为特殊的头文件,与本cpp文件构成接口与实现关系。如:同名的hpp与cpp;文件名虽然不同,但为多态场景,即具有继承关系。
头文件引用顺序
基本原则:
- 由远及近
- 由通用到特殊
- 影响域逐渐缩小
- 同类头文件按字母排序。
给定顺序如下:
- (cpp)接口与实现关系的接口文件
- 标准库STL
- 准标准库Boost
- 针对C++语言的第三方库(ACE等)
- 基于C++语言的第三方工具库(SQLite等)
- 同软件下,其他solution提供的接口文件
- 同solution下,其他project提供的接口文件
- 同project下,上一级目录提供的接口文件
- 同project下,子目录提供的接口文件 <