Visual Studio:项目参考与链接静态库

问题描述

在 Visual Studio 中,当我想在我的解决方案中使用现有项目时,我可以将其添加为引用,或将其添加为其他项目属性中的静态链接库。我很困惑什么时候应该使用 with 选项以及这两种方法有哪些好处。 PS:聊聊C++项目。

解决方法

在我看来,当一个项目需要使用一个库时,你至少要做两件事:

  1. 包含库对应的头文件
  2. 链接时,在VS中添加对应的.lib

File 当您的解决方案中有多个项目时,例如,项目 A 是 exe,项目 B 是静态库。如果项目 A 依赖项目 B,则需要做三件事:

  1. 在A项目中包含B的头文件
  2. 在Project A的link选项中添加b.lib,注意debug/relase的区别
  3. 每当更新 B 时,您需要先编译 B,然后重新编译 A。

由于以上动作都是标准动作,VS提供了一个名为Add Reference的函数,可以自动完成这两个动作:

  1. 链接A时,自动带b.lib,debug/release可以自动区分
  2. 当项目B发生变化时,如果在编译项目A之前先编译项目B

如果您想了解更多信息,可以参考有关 Create and use a static libraryManage references in a project 的 Microsoft Docs。