【发布时间】:2010-09-21 13:52:39
【问题描述】:
将成员变量声明为只读有什么好处?它只是防止有人在类的生命周期内更改其值,还是使用此关键字会导致任何速度或效率的提高?
【问题讨论】:
-
良好的外部答案:dotnetperls.com/readonly
-
有趣。这本质上是这个 Java 问题stackoverflow.com/questions/137868/… 的 C# 等价物,尽管这里的讨论不那么激烈......嗯......
-
可能值得注意的是,结构类型的
readonly字段与根本未发生突变的可变字段相比会带来性能损失,因为调用readonly值类型字段的任何成员将导致编译器复制该字段并在其上调用成员。 -
更多关于性能损失的信息:codeblog.jonskeet.uk/2014/07/16/…
标签: c# readonly processing-efficiency memory-efficient