繁体   English   中英

合并两个 C++ 项目

[英]Combine two C++ projects

我正在编写 NoSQL 数据库。

一切都在 'flat' 目录中,包含Makefile*.h*.cc文件。

我使用了很多 C++ 模板,所以我在一些头文件中有很多代码。

为简单起见,我将项目分为两部分。

数据存储部分:
https://github.com/nmmmnu/HM3

和网络部分:
https://github.com/nmmmnu/asyncore_cpp

我的通用文件很少,它们目前位于每个目录中。

现在我需要将它们组合在一个项目中。

由于 C++ 模板,大部分代码是相互关联的,但是如果我将所有内容都放在单个平面目录中,肯定不会看起来那么好。

任何建议我可以使用什么目录结构或如何合并项目?

如果有什么不清楚的,请发表评论,以便我改进问题。

我的规则如下:

  • 当A使用B,B使用A时,将A和B放在同一个目录下
  • 创建目录 D1、D2、D3、...的层次结构
  • 如果 Dy 中的 B 使用 Dx 中的 A,则 x < y
  • 永远不要有两个同名的文件,即使在不同的目录中

这样做的主要原因是能够为每个目录编译一个中间静态库而不会出现链接问题。

我的一个大型应用程序中的目录示例:

  • BuildInfo :一些从构建中获取信息的工具(库和编译器版本,构建宏,...)
  • 例外:我可以在我的应用程序中使用的所有例外
  • 工具:通用 C++ 工具,如矩阵、io-tools(日志、线程管理器、python 接口等)
  • MyAppCommon :我的应用程序的通用类
  • 算法:我的应用程序的算法
  • Main : 不同的 main 来创建最终的可执行文件,libs,Python 接口,...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM