3
|
Dana Robinson · 技术社区 · 15 年前 |
![]() |
1
2
你会遇到的最大问题是CRT的使用。如果crt(c运行时)静态链接到dll,则不应该有任何问题。 但是,如果CRT动态链接到项目中,您可能会遇到麻烦。Visual Studio 2005和2008使用了不同版本的CRT,因此很难将它们加载到表中。但如果一个或两个动态链接库的静态链接的CRT,你应该是在体面的形状。 |
![]() |
2
3
它可能会起作用。用VS2005编译的DLL将依赖于VS2005对C标准库的实现。(
|
![]() |
3
3
正如其他海报所评论的,你应该能够以这种方式工作。 然而,有一个问题可能是一个大的单内存管理。C++运行时,特别是,可能是棘手的。 最大的问题是2005年和2008年的运行时如何管理内存之间存在一些不兼容性。只要您总是在VS2008 DLL中分配内存,并且总是删除从该DLL中分配的内存,那么一切都可以正常工作。这通常需要在DLL中创建一些“额外的”工厂和清理方法,并公开这些方法。 如果在VS2008 DLL中分配内存,然后将其从使用VS2005编译的代码中删除,或者反之亦然,则可能会遇到一些非常难以调试的问题。它通常会工作,但有随机崩溃或不稳定。 |
![]() |
PHPLover · “支持PHP扩展或功能的端口”实际上是什么意思? 10 月前 |