无法解析的外部符号declspec dllimport,

  无法解析的外部符号declspec dllimport,

  错误LNK2019:未解析的外部符号“public:_ _ thiscalcbtt:cbtt(void)”(?0cttt @ @ qae @ xz),它在函数 protected:_ _ thiscallowerview:ower view(void)(?0co nerview @ @ IAE @ XZ)

  错误LNK2019:未解析的外部符号 public:_ _ thiscalcbtt:~ cbtt(void)(?1CBtt@@QAE@XZ),它在函数 public:void * _ _ thiscalcbtt:`标量删除毁灭者(unsigned int)(?_GCBtt@@QAEPAXI@Z)

  一./outdir/debug/owner.exe:致命错误LNK1120: 2无法解析外部命令

  的编译错误。

  一开始我以为她的附加库路径设置不正确,但是一看附加库路径设置正确,lib文件确实存在。然后我打开了她和Depends一起使用的dll,发现这个dll文件没有导出功能。然后我看了她的代码,凭感觉发现一个不自然的地方:

  我说这个API_DECLSPEC放错地方了。好像应该是类API_DECLSPEC CBtt。测试它并将其更改为API_DECLSPEC CBtt类。果不其然,CBtt这个类是可以导出的,对外使用也没有链接错误。后来我发现写API_DECLSPEC类CBtt可以成功编译lib和dll文件,但是编译器会给我们一个警告:

  __declspec(dllexport):未声明变量时,忽略“CBtt”的左侧。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: