ExportDefine.h文件代码如下:
#pragma once #ifdef CADBASELib_20180328 //dll内部 #define DLL_CADBASE_EXT_CLASS __declspec(dllexport) #else //dll外部 #define DLL_CADBASE_EXT_CLASS __declspec(dllimport)
test.h代码如下:
#pragma once #include "ExportDefine.h" DLL_CADBASE_EXT_CLASS extern double ABC123(double x1,double y1,double x2,double y2,double x3,double y3); #endif
test.cpp代码如下:
#include "stdafx.h" double ABC123(double x1,double y1,double x2,double y2,double x3,double y3) { return 0 ; }
问题分析:
test.cpp没有 #include "../include/CadBase/test.h",所以VS2010误认为ABC123 没使用,于是没编译。
解决方法:
test.cpp #include "../include/CadBase/test.h"