假设我有一个具有主要可执行文件和许多dll的visual c ++应用程序。我有2个配置发布和调试。
我只是想知道使用mix会产生什么影响,我的意思是使用debug dll与release main exe或者debug exe with release dlls。
由于
答案 0 :(得分:2)
我认为主要的潜在问题是DLL不会使用与可执行文件相同的运行时库。
这意味着您无法共享运行时对象(如文件描述符),也无法在一个内存中分配内存并在另一个中释放内存 - 尽管如果您遵循最佳实践并始终免费,这不会成为问题来自同一模块的内存。
如果您在DLL和可执行文件之间共享非POD(例如类的实例),则可能会出现问题。我不确定类实例是否保证在调试和发布之间是二进制兼容的。