在编译Dll文件的时候遇到dll 链接不一致的问题,头文件如下:
#ifdef TESTDLLEXPORT
#define DLLEXPORT __declspec(dllexport)
#else
#define DLLEXPORT __declspec(dllimport)
#endif
#ifdef __cplusplus
extern "C" {
#endif
DLLEXPORT void test();
#ifdef __cplusplus
}
#endif
虽然外部程序可以正常调用test();但链接不一致的根源是第一行TESTDLLEXPORT没有预定义
解决办法:项目属性-> C/C++ -> 预处理器 ->预处理器定义,添加TESTDLLEXPORT即可。