之前安装了一个minGw版本的Qt creator。得到了一个.dll,. lib, .h.要在Qt中调用起来,过程中遇到如下问题:
在开始时,发现在Qt中始终加载不了这个动态库更无法使用其中的类。了解到这个动态链接库是c++写得,怀疑是编译器的原因,因为一直VS 都是使用的MSVC的编译器而Qt默认是minGW , 并且我安装的也是MinGW编译器版本的Qt creator 。
最后做了如下调整:
1.安装VS2013专业版
2.安装Qt-MSVC2013版
DLL的使用方法可以再其他帖子中看到,建议使用隐式调用DLL的方式。
现在生成动态库的编译器和使用动态链接库的编译器一致,在Qt中再次实验后发现果真如此。动态链接库可以正常使用。
另外:
__declspec(dllimport) : 在使用的时候用
_declspec(dllexport):在导出的时候用
如果在程序中在调用库函数后,出现:无法解析的符号错误,请不要急躁。。
把项目下的.user。。 Debug release makefile 等等配置文件(除了一个.pro和代码文件其他都要删除,重新导入项目即可,如果不行,那再做一遍)