每次写dll的时候都不知道该选哪一种导出方式,在参考几篇文章之后总算乌云渐开。
参考文章:
DLL 函数导出的规则和方法:https://blog.youkuaiyun.com/xiaominggunchuqu/article/details/72837760
这篇详细介绍了dll的编译机制,为什么需要导出函数,以及两种导出函数的用法。
__declspec(dllexport)和__declspec(dllimport)搭配使用效率更高哦~
DLL 导出方法(两种):https://blog.youkuaiyun.com/yansmile1/article/details/53009794
通过这篇文章,知道 .def编译出来的dll不能用于不同版本的工程,比如用vs2015编译的dll,只能用于vs2015下的工程。而__declspec(dllexport)是通用编译器的。
许多导出指令(如序号、NONAME 和 PRIVATE)只能在 .def 文件中创建,并且必须使用 .def 文件来指定这些属性。不过,在 .def 文件的基础上另外使用 __declspec(dllexport) 不会导致生成错误。
作者写dll时不知选哪种导出方式,参考文章后有了思路。介绍了两篇文章,一篇讲dll编译机制、导出函数原因及两种导出函数用法,提到__declspec(dllexport)和__declspec(dllimport)搭配效率高;另一篇指出.def编译的dll版本受限,__declspec(dllexport)通用,还提及.def文件可创建特定导出指令。
723

被折叠的 条评论
为什么被折叠?



