【发布时间】:2020-04-20 01:10:25
【问题描述】:
我的 Visual Studio 解决方案结构如下:
*项目A(静态库)
*项目 B(静态库)
*测试项目(exe)
项目 B 定期引用项目 A,测试项目同时使用两者。最近,我在项目A中添加了一些新功能,但是在构建测试项目时尝试使用项目B中的新功能会导致无法解析外部。我已经检查过,它只发生在一个类(Model.cpp)中,我可以成功地使用项目 B 中其他类的新函数。什么可能导致项目 b 绊倒 A 中的一个类,而不是其他任何类?我已经对所有项目进行了多次重建、清理等 谢谢
【问题讨论】:
-
那么您根本不能使用该类(Model.cpp)中的任何函数吗?然后似乎该类未链接到库和/或测试应用程序。您可以通过Dumpbin 进行检查。
-
我可以在该类的实例中创建和使用变量。所以我可以做
Model * m = new Model()并访问m.memberVar。但我不能使用与Model有关的任何方法。很奇怪。我现在去看看垃圾箱 -
我到底应该使用垃圾箱寻找什么?
标签: c++ visual-studio linker