【系统结构】C++项目目录组织结构

项目目录结构的问题基本上是个仁者见仁,智者见智的问题,只要自己用着顺手,使用什么样的目录组织结构是没有什么大碍的。当然如果项目很大,参与的人员很多,那么合理的组织一下目录结构还是会有很大的益处的。不同类型的项目也会有不同的目录结构,这里简单的展示一下我所使用的C++项目的基本目录结构。

project ---+---build---+---debug      |     |---release      |---dist      |---doc      |---include---+---module1      |      |---module2      |---lib      |---module1      |---module2      |---res      |---samples---+---sample1      |      |---sample2      |---tools      |---copyleft      |---Makefile      |---README      |--- ...

下面分别介绍一下各目录和文件的用途

build/:项目编译目录,各种编译的临时文件和最终的目标文件皆存于此,分为debug/和release/子目录

dist/:分发目录,最终发布的可执行程序和各种运行支持文件存放在此目录,打包此目录即可完成项目分发

doc/:保存项目各种文档

include/:公共头文件目录,可以按模块划分组织目录来保存模块相关头文件

lib/:外部依赖库目录

res/:资源目录

samples/:样例程序目录

tools/:项目支撑工具目录

Makefile:项目构建配置文件,当然也有可能是其他类型的构建配置文件,比如bjam

README:项目的总体说明文件

项目目录结构的问题基本上是个仁者见仁,智者见智的问题,只要自己用着顺手,使用什么样的目录组织结构是没有什么大碍的。当然如果项目很大,参与的人员很多,那么合理的组织一下目录结构还是会有很大的益处的。不同类型的项目也会有不同的目录结构,这里简单的展示一下我所使用的C++项目的基本目录结构。 project ---+---build---+---debug      |     |---release      |---dist      |---doc      |---include---+---module1      |      |---module2      |---lib      |---module1      |---module2      |---res      |---samples---+---sample1      |      |---sample2      |---tools      |---copyleft      |---Makefile      |---README      |--- ... 下面分别介绍一下各目录和文件的用途 build/:项目编译目录,各种编译的临时文件和最终的目标文件皆存于此,分为debug/和release/子目录 dist/:分发目录,最终发布的可执行程序和各种运行支持文件存放在此目录,打包此目录即可完成项目分发 doc/:保存项目各种文档 include/:公共头文件目录,可以按模块划分组织目录来保存模块相关头文件 lib/:外部依赖库目录 res/:资源目录 samples/:样例程序目录 tools/:项目支撑工具目录 Makefile:项目构建配置文件,当然也有可能是其他类型的构建配置文件,比如bjam README:项目的总体说明文件
经验分享 程序员 微信小程序 职场和发展