Ran*_*agy 3 .net c# operator-keyword
因此,Visual Studio 2019的代码分析和代码建议开始突出显示代码的每一行,我在其中调用返回值的方法,但我根本不使用它并告诉我使用丢弃_运算符。
我不完全理解为什么这很重要,对于Fluent API样式代码来说,这似乎还是错误的。
以下两行之间在功能上有区别吗?
private int SomeMethod() => 0;
...
SomeMethod();
_ = SomeMethod();
...
Run Code Online (Sandbox Code Playgroud)
如果返回值是参考,会更重要吗?如果不是,是否有办法全局禁用此检查?
Microsoft文档摘录:
从C#7.0开始,C#支持丢弃,这些丢弃是临时的伪变量,它们在应用程序代码中有意未使用。丢弃等效于未分配的变量。他们没有价值。因为只有一个丢弃变量,并且可能甚至没有为该变量分配存储空间,所以丢弃可以减少内存分配。因为它们使您的代码意图清晰明了,所以它们提高了代码的可读性和可维护性。
完成所有代码分析以帮助改善整体编码。有时我们在返回简单值的项目中早期编写快速方法。在重构期间,无论出于何种原因,我们都停止使用此类变量。代码分析只是指出这一点。作为开发人员,您可以自行决定,嘿,让我将方法重构为不返回变量,因为我们不需要它。这完全取决于您团队的开发风格。
验证您的问题,我正在运行VS2019 16.0.0 Preview 5.0,并且那里存在问题。
按照@MartinUllrich的评论,我升级到了16.1.0 Preview 2.0版本。警告已消失。您也可以使用#pragma指令禁用警告
您还将取消整个项目的警告。
| 归档时间: |
|
| 查看次数: |
280 次 |
| 最近记录: |