【问题标题】:What are Visual Studio project references?什么是 Visual Studio 项目引用?
【发布时间】:2011-12-28 07:04:35
【问题描述】:

我遇到了我项目的框架和参考选项卡,并注意到我可以向我的项目“添加新参考...”,这是什么功能?

【问题讨论】:

  • 当您使用 C++/CLI 语言编写代码时,这一点很重要。不要与 C++ 语言混淆。

标签: c++ visual-studio visual-c++ visual-studio-project


【解决方案1】:

引用用于将其他库拉入您的项目。例如,当您创建一个 Windows 项目时,您将使用 Windows 窗体、XML 解析器、套接字库和许多其他有用的东西。现在,您可以从头开始创建所有这些,但这将是一项疯狂的任务。相反,您可以使用预先构建的库,例如 System.Windows.Forms(所有表单内容)、System.Xml(XML 解析器内容)等。

在底层,这些都是 Microsoft 预编译并与 Visual Studio 一起分发的 DLL 文件。添加引用允许您将其中的新引用添加到您的项目中,例如,Managed DirectX for 3D 不是常用的,因此必须手动添加到项目中。

我也刚刚注意到上面的 C++ 标记,所以这实际上可能听起来非常傲慢(因为我可能把问题的范围弄错了),在这种情况下,我不是故意的。对于C++,它将用于C++/CLI,这是微软试图让C++使用.NET框架的尝试。

【讨论】:

  • 所以如果我理解正确:它只是在链接期间将静态库(已经构建)链接到我当前的项目?这与为项目的链接器输入设置添加 .lib 有何不同。
  • 啊哈,所以您正在链接本机库。在这种情况下,我的帖子可能看起来确实很傲慢,对此感到抱歉。引用基本上只是 .NET 执行您所要求的方式,并用于 C++/CLI。它与静态库无关(引用仍然用作动态库)。
  • 见 Lumi 的回答;项目系统将引用用于本地 C++ 项目。
【解决方案2】:

对于 Visual Studio 2010 Express 中的 C/C++,添加项目引用(参见第一张图片,德语文本,但您明白了)将如下节点添加到 .vcxproj 文件:

<ItemGroup>
  <ProjectReference Include="..\Ws1Lib\Ws1Lib.vcxproj">
    <Project>{22c9de39-f327-408b-9918-187c0ee63a86}</Project>
  </ProjectReference>
</ItemGroup>

这将使引用项目生成的静态库可用于引用项目,并添加不可删除的项目依赖项(右键单击项目并选择项目依赖项,参见第二张图片)到引用项目。

(当你put the project configuration files under version control再看diff时,这种点击动作对项目配置文件的影响就很明显了。)

要创建一个或多个项目引用静态库项目的设置,请参阅此 MSDN 指南: Walkthrough: Creating and Using a Static Library (C++)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-04-14
    • 2016-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-09
    • 1970-01-01
    相关资源
    最近更新 更多