当包含全局函数时,c++错误lnk2005



我正在处理一个dll项目,它一直运行良好,直到我添加了一个新的.h,其中包括一个全局函数和一个结构。然后编译(或链接)失败。

这是错误消息:

1>RobotReality.obj : error LNK2005: "double __cdecl GetNumber(void)" (?GetNumber@@YANXZ) [[已经在 dllmain.obj 中定义  translate: this has been defined in dllmain.obj]]
1>stdafx.obj : error LNK2005: "double __cdecl GetNumber(void)" (?GetNumber@@YANXZ) [[已经在 dllmain.obj 中定义  translate: this has been defined in dllmain.obj]]

我添加了"#pragma once",但问题仍然存在。

如何解决这个问题?

谢谢!

将它们声明为"static",并让编译器完成工作。

相关内容

  • 没有找到相关文章

最新更新