0

我有一个解决方案,我在其中添加并设置了 boost 单元测试。问题是我有另一个我想测试的项目,其中有一些类。事实上,那个项目是我添加 boost 的主要原因。

我需要测试的项目设置为输出为 .dll。问题是,每当我的测试项目需要访问其他项目的代码时,它都可以很好地访问标头。但是,如果标头中包含未解析的代码,而这些代码在包含对象的项目的 .cpp 文件中已解析,则会收到链接错误。有没有解决的办法?理想情况下,我希望将我的对象保存在我的其他 dll 中,然后在我的测试项目中测试它们。

4

2 回答 2

0

您可能没有告诉您的测试项目在哪里可以找到符号。手动链接到您的生产代码的 .lib,或者您可以添加项目作为参考,VS 将自动链接您的项目。

转到项目的属性,在 Common Properties 下选择 Framework 和 References。单击 Add New References... 按钮,然后选择您的其他项目。由于它是一个 .dll,因此您需要将 Link Library Dependencies 设置为 False(保存并重新打开对话框,该设置似乎有问题)。

于 2012-09-21T19:33:47.420 回答
0

问题是 Visual Studio 编译器无法链接到其他文件中的 CPP。我还必须使用现有文件选项将 CPP 文件添加到 boost 项目中。

于 2012-09-23T03:26:38.987 回答