2

我写了一些类,一个 C++ 项目的后端(win32 项目),然后想给它添加一个 GUI。Visual C++ 似乎是一个很好的解决方案,但在完成 GUI 部分后,我无法集成纯 C++ 代码。有人有这方面的经验吗?我收到“未解决的外部”错误。显然 .cpp 文件在最后一步中没有链接。我想一些项目设置也需要更改,有人可以解释一下吗?

我也在考虑将这些类编译成一个 .dll 并将其导入到可视化 C++ 项目中,这是否可能以某种方式或者两个项目可以一起编译?

感谢您的帮助,我已经玩了一段时间了,但找不到任何可行的解决方案。

佐尔坦

4

4 回答 4

0

“项目A”需要导入“项目B”的标题,它还需要链接到“项目B”。

于 2010-03-04T22:24:26.633 回答
0

您如何将这些旧类导入您的 C++ GUI 项目?作为一个库,还是作为源文件?

如果只是源文件,您只需将文件添加到项目中并将它们与新文件一起编译即可。

于 2010-03-04T22:25:24.407 回答
0

鉴于没有足够的细节来真正能够分辨出发生了什么,我的脑海中有很多可能性。

  • 如果您没有单独链接后端,则不会编译后端部分的代码(项目的 cpp 文件不是 GUI 项目或相关依赖项的一部分)。
  • 您的后端项目的库未链接;检查项目属性的链接部分。在您单独链接的情况下。
  • 后端和前端库已使用不同的设置进行编译,在链接时这会导致问题。例如调试和发布标准库、多线程或单线程库;如果它们不匹配,不同的字符串定义也会导致问题(特别是如果您使用了模板代码)。

如果您愿意,完全可以使用后端部分构建 dll。如果它不会被其他任何东西使用,我可能不会打扰,只是静态链接,但你当然可以。

于 2010-09-08T03:28:14.190 回答
0

如果您的后端代码被集成为一个生成库的单独项目,您需要将此项目的依赖项添加到您的 GUI 应用程序中。

如果您没有将项目集成到您的 GUI 解决方案中,则需要设置包含目录,在链接器->输入中添加库,并通过在链接器选项中设置附加库目录让 VS 知道如何找到它。

于 2010-04-16T02:56:33.903 回答