Visual studio 2015 如何抑制某些文件的Intellisense错误?

Visual studio 2015 如何抑制某些文件的Intellisense错误?,visual-studio-2015,intellisense,Visual Studio 2015,Intellisense,Visual Studio 2015提供了在同样显示常规生成错误的窗口中显示Intellisense错误的选项。我喜欢它,因为我甚至不需要构建来查看代码的语法是否正确 但是,该窗口还显示一个误报错误,该错误似乎与Intellisense错误有关。有没有办法抑制特定代码区域或整个文件的intellisense错误?找到答案了吗?您可以通过在引发错误之前的代码行中编写以下代码来实现 #pragma warning disable XXXX 其中XXXX是不带“CS”的错误代码 或者,您可以尝试以下

Visual Studio 2015提供了在同样显示常规生成错误的窗口中显示Intellisense错误的选项。我喜欢它,因为我甚至不需要构建来查看代码的语法是否正确


但是,该窗口还显示一个误报错误,该错误似乎与Intellisense错误有关。有没有办法抑制特定代码区域或整个文件的intellisense错误?

找到答案了吗?您可以通过在引发错误之前的代码行中编写以下代码来实现

#pragma warning disable XXXX
其中XXXX是不带“CS”的错误代码

或者,您可以尝试以下步骤来抑制针对Visual C#或F的特定警告#

  • 在解决方案资源管理器中,选择要在其中抑制警告的项目
  • 在菜单栏上,选择“查看、属性页”
  • 选择构建页面
  • 在“抑制警告”框中,指定要抑制的警告的错误代码,以分号分隔,然后重新生成解决方案
  • 从这里开始


    请注意,这里提到的是警告而不是错误,但对于我来说,如果我选择在“错误列表”窗口中显示抑制的错误,它们将作为错误列出。您可能需要在错误列表窗口中启用此列。

    使用StyleCop时,您可以执行以下操作:

    [SuppressMessage(“规则类别”、“规则Id”、“理由”)]

    例如:

    [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.StyleCop.CSharp.NamingRules", 
                "SA1300:ElementMustBeginWithUpperCaseLetter", 
                Justification = "This field is intentionally lowercase")]
    

    我知道这是一个老问题,但我刚刚对VisualStudio2019/IntelliSense提出了类似的投诉,并找到了解决方案

    我的具体例子是C++,涉及到可变长度数组的使用。Clang支持/编译它们,我可以通过添加
    -Wno vla
    选项(
    Properties->C/C++->Command Line->Additional Options
    )来抑制生成警告。
    但是,IntelliSense忽略了“-Wno vla”将vla视为错误而不是警告的情况。因此,代码及其错误列表中出现了红色的波形:
    E0028表达式必须有一个常量值

    (此错误编号28在下面很重要)

    关键是要记住,IntelliSense使用不同的编译器前端,因此可能对“正确”的概念与您选择的构建编译器和选项不同。前端是从获得许可的,幸运的是,他们记录了它的一些操作,包括命令行选项、pragmas等。此处:

    我不知道如何将他们的命令行选项专用于他们的前端,这似乎是从项目中提取其选项,与构建编译器使用的选项相同。。。而且它限制了这些选项,尤其是那些在空格后需要参数的选项(例如,
    --diag\u suppress 28
    从未起作用)

    然而,我能做的是前端特定的布拉格!因此,这需要少量不可移植的代码。具体来说,我将以下内容放入了我的一个顶级(“每个人都包括”)头文件中,效果非常好:

    #ifdef __INTELLISENSE__
      #pragma diag_suppress 28
    #endif
    

    如果没有
    \uuu INTELLISENSE\uuuu
    子句,您还可以执行以下操作:
    \pragma-clangdiagnostic-ignored“-Wunknown-pragmas”

    在错误列表视图中,工具栏中有一个组合框,您可以在其中选择要在那里显示的错误类型,可以是build,也可以是INTELLISENSE,也可以是两者都显示(intellisense在2015年在我这边表现得很奇怪).我知道,但我想看到Intellisense错误。Intellisense错误总体上效果很好。我只想消除这一个错误。很抱歉,即使在VS2015中,我也不认为可以部分禁用Intellisense。在以前的版本中不可能。不过,有一些解决方法,在您的情况下可能有效,也可能无效,例如,卸载或加载关联的项目。这是否适用于生成警告或Intellisense警告?还是两者都适用?