c# - 如果您只想将值设置为默认值,那么不显式初始化值是否总是可以的?

标签 c#

Resharper 刚刚提示我这行代码:

private static bool shouldWriteToDatabase = false;

表示我不应该说“= false”,因为 bool 值显然是 default to false in C# .我用 C# 编程已经一年半多了,但我从来不知道这一点。我猜它只是从裂缝中溜走了,但这让我想知道什么是好的做法。

我是否假设所有人都理解默认值?这会产生更清晰的代码,但如果其他程序员不知道默认值,则会引起歧义。

最佳答案

个人认为:

  • 如果您的代码依赖初始值,最好明确说明。
  • 如果您的代码不依赖于初始值,则省略它会更有意义并且不会使代码困惑。

但是我不认为 Resharper 可以轻易地检测出这两种情况之间的区别。

关于c# - 如果您只想将值设置为默认值,那么不显式初始化值是否总是可以的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7932883/

相关文章:

javascript - 为什么通过 Javascript 更改文本框的文本不会触发 Asp .Net 中的 OnTextChanged

c# - 如何订阅改变DependencyProperty?

c# - 第二次导航到页面后,Selenium 找不到之前创建的 IWebElement

c# - 在可空类型上使用合并空运算符会更改隐式类型

javascript - 如何从模型创建数组?

c# - EntityFramework 长时间运行任务的等待操作超时

c# - EasynetQ 总线。订阅未触发 - 抛出 "messageType must not be null"

c# - 使用动态类型调用泛型扩展方法

c# - 带有可选参数的 MVC 操作——哪个更好?

c# - 使用 fluentmigrator 运行 sql 脚本