c# - 为什么 ReSharper 更喜欢 const 而不是 readonly?

标签 c# resharper constants readonly

我注意到“常见做法和代码改进”下的 ReSharper 建议:将局部变量或字段转换为常量

我还注意到,在 Bill Wagner 的《Effective C#: 50 Specific Ways to Improve Your C#》一书中,有一个语言成语“Prefer readonly to const”,作者在其中解释了使用 const 的风险。

我的问题不是关于 readonly 和 const 之间的区别以及何时使用它们,而是为什么一个来源将 const 视为一种常见的做法/代码改进,而另一方面,第二个来源将 readonly 视为一个习语?

最佳答案

私有(private)常量不会带来与公共(public)常量相同的风险。 ReSharper 可能建议针对字段在外部不可见的情况进行性能优化。

关于c# - 为什么 ReSharper 更喜欢 const 而不是 readonly?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3398399/

相关文章:

c# - 从顺序文件读取到结构数组

c# - ASP.NET 3.5 Url 路由不工作

sonarqube - 将 InspectCode (Resharper) 和 OpenCover 代码覆盖率报告合并到 Sonar Qube Build 中

c++ - 是否可以通过 const 引用获取参数,同时禁止转换以便不传递临时变量?

c++ - 常量和非常量运算符重载

c++ - const 在 C++11 中是否意味着线程安全?

c# - 从一个 Action 中调用一个 Action

c# - 我如何启动进程并隐藏它的窗口?

c# - .NET Core 源的 ReSharper 导航仅显示 stub : how to move further to impl?

c# - 为什么 resharper 建议左操作数永远不为空