有时,我在编译 F# 时会遇到烦人的模式匹配和缩进警告。有没有办法禁用警告?我对警告非常强迫症。
万一忘记了,可以输入
let rec x = lazy(x.Value)
并收到警告
这个和其他递归引用 被定义的对象将是 检查初始化健全性 在运行时通过使用 延迟参考。这是因为你 定义一个或多个递归 对象,而不是递归 功能。该警告可能是 通过使用 '#nowarn "40"' 或 '--现在警告:40'。
这表明您可以在命令行上使用编译器标志
--nowarn
,或者在代码中使用哈希指令 #nowarn
。 每个警告的警告编号将成为构建输出的一部分(Visual Studio 错误列表不显示数字,因此如果在 VS 中,则构建然后检查构建输出)。 另外,如果在 VS 中,您可以转到项目属性页面的“构建”选项卡,并使用“警告级别”选择器和“抑制警告”字段(分号分隔的数字列表)来控制通过以下方式显示哪些警告VS 用户界面。
(顺便说一句,我相信
#nowarn
仅关闭当前文件中的警告,而 --nowarn
则为正在编译的整个项目关闭警告。)
请参阅:编译器选项 (F#)
:--nowarn:<int-list>
禁用列出的特定警告 数字。分隔每个警告编号 以逗号表示。您可以发现 任何警告的警告编号 编译输出。
这个编译器选项相当于 相同的 C# 编译器选项 姓名。有关更多信息,请参阅 /nowarn(C# 编译器选项)。
除了编译器命令行和项目文件之外,还可以基于文件抑制警告(没有选项可以仅关闭部分文件)使用
#nowarn n
其中
n
是警告号码(不带“FS”前缀。可以列出多个号码:
#nowarn 3261 0010
请参阅预处理器指令、