我花了很多时间思考如何为Qt C ++项目组织一个好的模块化结构。不幸的是,我没有找到一个完整的示例来说明如何正确地做(我遗漏了什么吗?),因此我正在寻找建议。到目前为止,我有以下假设:
所以我想要的项目结构如下所示:
|project_root
|src
src.pro (TEMPLATE = subdirs)
|apps
apps.pro (TEMPLATE = subdirs)
|my_app
my_app.pro (TEMPLATE = app)
main.cpp
...
|modules
modules.pro (TEMPLATE = subdirs)
|my_module
my_module.pro (TEMPLATE = ???)
|tests
tests.pro (TEMPLATE = subdirs)
|MyClass1Test
MyClass1Test.pro (TEMPLATE = app)
tst_myclass1test.cpp
|MyClass2Test
MyClass2Test.pro (TEMPLATE = app)
tst_myclass2test.cpp
MyClass1.h
MyClass1.cpp
MyClass2.h
MyClass2.cpp
Run Code Online (Sandbox Code Playgroud)
我的第一个问题是-在Qt Creator的逻辑范围内此结构是否良好?我做错了什么吗?
我的第二个问题是关于my_module.pro的实现。我应该在这里使用哪个模板?我正在研究四种类型的项目模板:subdirs,lib,aux和我无法按上述方式组织我的模块结构(这就是为什么我要寻找逻辑错误的原因)。这有一些原因:
TEMPLATE = subdirsmy_module.pro,Qt Creator将无法识别其中的任何文件(MyClass1.h,MyClass1.cpp,...从项目结构分解器),并且我将无法再构建库TEMPLATE = lib或TEMPLATE = aux,则无法在此文件夹中创建测试子项目因此,我的第三个问题是:如何以一种好的方式组织我的项目来克服这些问题?
| 归档时间: |
|
| 查看次数: |
1307 次 |
| 最近记录: |