“readonly”(C#)是否减少内存使用?

在C#中,将一个字段设置为只读方式减少内存使用量?

DBRepository _db = new DBRepository();

VS

readonly DBRepository _db = new DBRepository();

只是好奇.谢谢.

没有.

这意味着你不能分配给它,除非在声明点或构造函数中.您也不能将其作为参考或输出参数传递给方法.

编辑:根据下面的评论.以下字段是只读的,因为您希望调用者具有对string.Empty的直接读取访问权限,但您不希望它们将其设置为其他内容.

public sealed class String
{
    public static readonly string Empty = "";
}

另外,有时候我有一个List<>或字典<>作为一个类中的一个字段,我将声明它只是为了表明我想要使用它的成员(甚至添加和删除项目等),但我不想实际分配一个不同的List或Dictionary对象.

另外一个编辑:确保你阅读关于已弃用的Path.InvalidPathChars字段(在备注部分),以显示一个严重的问题,可能会发生,当你不明白什么是只读,而不是.

相关文章
相关标签/搜索