以下代码为什么无法导出函数



 软件架构师何志丹

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"

猜你喜欢

转载自blog.csdn.net/he_zhidan/article/details/79755677