0

我正在寻找一种优雅而实用的方法来在 2 个不同的程序之间共享模型,而无需单独编译它们。

我正在为同一客户开发 2 个不同的软件。两者以不同的方式共享相同的功能(体积填充优化)。但是用户界面既沉重又不同,因此为了清楚起见,我希望将它们分成 2 个不同的软件。

但是为了重用代码并使其易于维护,我希望有一个像核心这样的架构,每个软件都有两个分离/专门的层。

我考虑过创建一个 .dll 或 .so 以便两个应用程序共享它,但我正在开发 linux 并且客户正在使用 Windows,所以我发现以这种方式移植应用程序非常繁重。(我没有任何运行 Windows 的计算机,所以我要去延迟端口)

我还考虑过创建一个命令行程序作为核心,并在运行软件时通过 shell 调用它,但这似乎无法以可移植的方式进行。

是否有一种简单且可移植的方式来执行此操作(很像在 python 中导入模块)我在 c++ 中找不到?或者如果不是,最好使用共享库或编译包含核心的两个软件?

4

1 回答 1

2

“编译包含核心的两个软件” - 从开发人员的角度来看,为了方便起见,这是首选。

如果您真的想使用一段已编译的跨平台代码,您可能必须编写一个 c 样式的 dll。

于 2013-09-29T14:22:56.860 回答