将release dll与debug main application exe混合使用

时间:2012-09-05 15:48:36

标签: windows visual-c++

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

我只是想知道使用mix会产生什么影响,我的意思是使用debug dll与release main exe或者debug exe with release dlls。

由于

1 个答案:

答案 0 :(得分:2)

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

这意味着您无法共享运行时对象(如文件描述符),也无法在一个内存中分配内存并在另一个中释放内存 - 尽管如果您遵循最佳实践并始终免费,这不会成为问题来自同一模块的内存。

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