【问题标题】:Does Visual Studio continuously compile?Visual Studio 是否连续编译?
【发布时间】:2010-10-09 07:56:18
【问题描述】:

在 VS 中工作时,底部面板中的错误消息是编译器错误和警告,对吧?这是否意味着应用程序一直在编译?我希望这些仅在尝试运行应用程序时出现。

这可能是一个愚蠢的问题,但我找不到答案。

【问题讨论】:

  • 您说的是状态栏中的“智能感知”消息吗?

标签: visual-studio-2010 diagnostics


【解决方案1】:

Visual Studio 不断解析源代码;这允许它在您实际编译源代码之前抢先报告一些错误。

当然,这取决于您使用的语言。 C++ 直到 Visual Studio 2010 才获得抢先式错误报告。

【讨论】:

  • 谢谢。我知道它会解析代码,但我不确定是否有其他东西,例如错误类型错误不是编译的结果
  • @Leberian:好吧,在解析源代码之后,执行基本的语义分析以检查类似的错误。我不知道到底检查了什么。不过,这并不是从源代码到二进制文件的完整编译。
【解决方案2】:

Visual Studio 本身并不连续编译代码。

但是,我刚刚下载了这个名为 .Net Demon 的小应用程序的 14 天试用版,它是 Visual Studio 的一个插件。它花费 30 美元,但如果您有许多项目的大型解决方案,它绝对是一个不错的工具。

http://www.red-gate.com/products/dotnet-development/dotnet-demon/

我可能最终会崩溃并购买它,它非常漂亮。

【讨论】:

    【解决方案3】:

    每种编程语言都不同(每种语言都提供特定于提供反馈的该语言的 Visual Studio“语言服务”),但在大多数情况下,是的,它正在一遍又一遍地编译。以F#为例,编译器分为几个阶段,主要是lexer/parser、typechecker、code generator,而lexer/parser/typechecker在VS内部运行,每次在文件中键入一个字符,该文件将通过编译器的这些阶段重新运行。

    【讨论】:

      【解决方案4】:

      当您编译应用程序时,可能会在错误窗口中显示错误和警告。当您运行应用程序时,错误将不再显示在 Visual Studio 中,但取决于您的应用程序的组织方式,它会崩溃或优雅地处理它们。另请注意,如果您尝试使用 F5Ctrl+F5 运行应用程序,Visual Studio 将首先尝试编译它,如果出现编译时错误和警告,它们将显示出来。

      【讨论】:

      • 我知道..但它在编写代码时显示,不仅在运行后显示。
      • 代码编辑器在不断分析源代码时,可能会在输入时标出源代码中的错误。
      猜你喜欢
      • 2021-12-27
      • 1970-01-01
      • 1970-01-01
      • 2015-09-26
      • 1970-01-01
      • 2023-03-27
      • 1970-01-01
      • 2011-05-21
      • 2016-09-12
      相关资源
      最近更新 更多