C++链接错误未解析的外部符号

C++ linking error unresolved external symbol

本文关键字:外部 符号 链接 错误 C++      更新时间:2023-10-16

我有一个项目,其中包含来自不同项目的文件。我收到链接错误。。。

"未解析的外部符号"public:_cdecl classA::classA(void)(?)A级@@QEAA@XZ)在函数"class classA*_cdecl"中引用functionB(char const*)"(?functionB@@YAPEAVClassA@@PEBD@Z)。。。

以及其他125个相同类型的错误(在构造函数之后,也就是我刚刚列出的错误,我使用的类中的每个函数都在其中一个链接错误中提到)
包含第二个项目的文件的路径包含在我的属性表中。这个项目本身建设得很好
我已经尝试将该项目添加到我的解决方案中,并将其作为依赖项添加。没有帮助。我已经尝试添加它在项目链接器输入中创建的dll。没有帮助
在配置属性中,运行库设置为/MTd
我甚至尝试在include前面添加外部的"C"。没有帮助
我尝试过用Debug或Release、x64或Win32来构建它们。我更喜欢x64版本,但我愿意接受任何东西
你能帮我吗?告诉我我做错了什么,或者在哪里解决这个问题?非常感谢。

当您构建您所依赖的项目时,它应该同时生成一个lib和一个dll。您需要将该库与您的项目链接起来。有关如何在项目中链接lib的屏幕截图,请参阅此线程。

我发现我在Link-Input中的依赖项被删除了,因为我没有在属性表中明确指定我可以有依赖项。在更改了属性表之后,我终于能够创建一个dll了。