3

假设我有一个具有主要可执行文件和许多 dll 的可视 C++ 应用程序。我有 2 个配置发布和调试。

我只是想知道使用 mix 可能会产生什么影响,我的意思是使用 debug dll 和 release main exe 或 debug exe 和 release dll。

谢谢

4

1 回答 1

2

我认为主要的潜在问题是 DLL 不会使用与可执行文件相同的运行时库。

这意味着您不能共享运行时对象,例如文件描述符,并且您不能在一个中分配内存并在另一个中释放它 - 尽管如果您遵循最佳实践并始终从分配它的同一模块。

如果您在 DLL 和可执行文件之间共享非 POD(例如类的实例),也可能会出现问题。我不确定类实例是否保证在调试和发布之间是二进制兼容的。

于 2012-09-05T22:16:37.287 回答