gpt4 book ai didi

c++ - Visual Studio 单元测试静态库;防止主项目中的额外依赖

转载 作者:行者123 更新时间:2023-11-30 03:43:19 25 4
gpt4 key购买 nike

我有一个项目,我想在 Visual Studio 2013 中进行单元测试。在遇到一些链接器错误并阅读 this question 的答案后,我已将项目类型更改为静态库 (lib)。 .

我不了解 C++ 中编译和链接的底层机制。在将我的项目更改为静态库时,我似乎失去了指定额外依赖项的能力,这很痛苦,因为我需要三个库用于我想要测试的主项目。

我应该如何测试这个项目,有没有办法让我的项目成为静态库并仍然指定额外的依赖项?

最佳答案

静态库是目标文件的集合。不涉及链接器。依赖关系没有得到解决。它只需要 header 即可构建。

现在,当您最终创建可执行文件(或动态库)时,您应该链接所有必要的依赖项。

但是,请注意,除了上述“经典”构建过程之外,Visual Studio IDE 还提供抽象(方便,但有时有点误导,尤其是对新手而言),称为“项目引用”和“项目依赖项”。有一些选项可以使静态库“依赖”于其他静态库。此外,可执行文件可以依赖于第一个静态库。启用“链接依赖项”后,Visual Studio 将递归解析整个依赖链并将所有必要项链接到您的可执行文件中。

另见:

关于c++ - Visual Studio 单元测试静态库;防止主项目中的额外依赖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36199598/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com