gpt4 book ai didi

c++ - 低版本visual studio构建.dll

转载 作者:太空狗 更新时间:2023-10-29 19:46:53 24 4
gpt4 key购买 nike

我正在使用 Visual Studio 2010 构建我的 DLL 库。

而且,其他使用 Visual Studio 2005 的程序员想要使用我的 DLL 库。他可以使用我的 dll 进行编译,但是,在运行他的应用程序时,它只是因 bad_alloc 异常而崩溃。我认为这是因为 CRT 版本不同。

在构建我的 DLL 库时,我尝试了 CRT(/MD) 的动态链接和 CRT(/MT) 的静态链接,但都失败了。

那么,我就不能制作低版本visual studio可以使用的DLL库吗?如果没有,我该怎么做?

最佳答案

据我所知,您必须只使用原始类型 dll 接口(interface)。这是因为即使在同一个编译器中,内存布局也会通过仅更改编译标志来更改,想想通过更改编译器会发生什么。这可能会导致大规模的未定义行为。

并为您的函数接口(interface)使用以下格式:

extern "C" __declspec(dllexport) void doSomething(int input);

关于c++ - 低版本visual studio构建.dll,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6261034/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com