C ++项目组织(带有gtest,cmake和doxygen)
我是编程的新手,所以我决定从用C ++创建一个简单的矢量类开始。但是,我想从一开始就养成良好的习惯,而不是稍后再尝试修改我的工作流程。 我目前只有两个文件vector3.hpp和vector3.cpp。随着我对一切的熟悉,这个项目将开始慢慢发展(使它更多地成为通用的线性代数库),因此我想采用“标准”项目布局,以使以后的生活更轻松。因此,环顾四周后,我发现了两种组织hpp和cpp文件的方法,第一种是: project └── src ├── vector3.hpp └── vector3.cpp 第二个是: project ├── inc │ └── project │ └── vector3.hpp └── src └── vector3.cpp 您会推荐哪个?为什么? 其次,我想使用Google C ++测试框架对我的代码进行单元测试,因为它似乎很容易使用。您是否建议将此与我的代码捆绑在一起,例如在inc/gtest或contrib/gtest文件夹中?如果捆绑在一起,您是否建议使用fuse_gtest_files.py脚本来减少数量或文件数量,或者保持原样?如果不捆绑在一起,该依赖性如何处理? 在编写测试时,通常如何组织这些测试?我当时想为每个类创建一个cpp文件(test_vector3.cpp例如),但是全部编译成一个二进制文件,以便它们可以轻松地一起运行? 由于gtest库通常是使用cmake和make构建的,所以我认为对我的项目也这样构建有意义吗?如果我决定使用以下项目布局: ├── CMakeLists.txt ├── contrib │ └── gtest │ ├── gtest-all.cc │ └── gtest.h ├── docs │ └── Doxyfile ├── inc …