Visual studio 2015 如何抑制某些文件的Intellisense错误?
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”的错误代码 或者,您可以尝试以下
但是,该窗口还显示一个误报错误,该错误似乎与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警告?还是两者都适用?