【问题标题】:Loading Boost 1.40.0 into Intellisense in Visual Studio 2005?在 Visual Studio 2005 中将 Boost 1.40.0 加载到 Intellisense 中?
【发布时间】:2009-12-04 03:54:18
【问题描述】:

有没有办法在 Visual C++ for Visual Studio 2005 中获得 Intellisense?

我正在尝试让 Boost 库在智能感知和对象浏览器/类视图中加载。

我使用BoostPro installer(BoostPro 1.40.0 安装程序)安装了适用于 Windows 的二进制文件。

但我不确定它是否带有源代码,这可能是使 Intellisense 在 VS2005 中工作所必需的。

【问题讨论】:

  • 另一个建议:Visual Studio 2008 中 C++ 的 Intellisense 功能明显优于 Visual Studio 2005;如果你可以升级,你应该考虑这样做。有时它仍然参差不齐,尤其是模板繁重的代码和庞大的代码库,但它更好。

标签: visual-c++ visual-studio-2005 boost intellisense


【解决方案1】:

Boost 是 open source,而且大部分只是标题。只需确保 IntelliSense 知道 boost 所在的目录,以便它可以探索它。

如果没有答案,您可以试试Visual Assist X,它比 Visual Studio 的 IS 工作得更好,功能也更多。

要确保 Intellisense 可以找到 boost,只需确保 Boost 位于包含目录中(在 Project Properties->C/C++->Additional Include Directories 下)。也许把它移到顶部。之后,关闭您的 Visual Studio 实例,然后搜索项目附近的 *.ncb 文件,然后将其删除。这将导致 IntelliSense 刷新。希望这足以为您提供帮助。 (您必须使用 #include 将 boost 标头包含到源文件中,以便 IntelliSense 考虑它)

请记住,boost 有一些非常复杂的部分,IS 会阻塞,但仍应提供名称。

【讨论】:

  • 这是 Visual Assist 网站。
  • Um...*ahem* 你如何告诉 IntelliSense 源所在的位置? (抱歉,我是 Visual Studio 的新手):-p
  • Visual Assist X 很棒。对于一个小团队来说成本太高了。
  • 我建议反对将您的 Boost 副本放入全局 VC++ 目录列表中,原因有两个:在不同的项目中使用不同版本的 Boost 很困难(这您可能需要这样做)并且全局 VC++ 目录列表已在 Visual Studio 2010 中删除(参见blogs.msdn.com/vsproject/archive/2009/07/07/vc-directories.aspx)。您应该将 Boost 包含目录添加到项目的“附加包含目录”属性中。就 Intellisense 而言,它应该扫描通过全局和项目设置找到的标头。
  • 有一个与 Visual Studio 2010 一起打包的属性表,它在创建(或从旧版本迁移,我想)时添加到 C++ 项目中,用于设置 VC++ 目录列表中的内容。
【解决方案2】:

Intellisense 扫描 Visual C++ 项目的源文件中的 #included 标头。

因此,创建一个包含您感兴趣的 boost 库的顶级标头的单个源文件的项目。尽管某些 boost 代码无法被 intellisense 解析,并且 boost 代码包含很多代码来解决语言或编译器限制,这对于想要查看面向用户的库结构的人来说只是噪音。

【讨论】:

  • sigh 好的,那么对于 1.40.0 版的 boost,什么是好的文档来源?在我看过的每个地方(即 boost 网站和作为文档的 pdf 文件),文件系统的东西对我来说确实不完整。
  • 我担心一些 boost 库的文档是不完整的——不过我从来没有看过文件系统文档。如果您有具体问题,boost 用户邮件列表是一个很好的提问场所。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-02-28
  • 1970-01-01
  • 2010-09-15
  • 2011-04-30
  • 1970-01-01
  • 2012-04-11
  • 1970-01-01
相关资源
最近更新 更多