前言
一段时间以来,我一直在对几乎所有类字段使用 readonly 修饰符。我将它用于 List
问题
你什么时候使用readonly,或者你呢?
您或您的公司是否有任何关于只读使用的最佳实践和/或编码标准?
我很想听听您对以下示例类(class)的看法,一般概念是否是一种好的做法?
class FileReaderWriter : IFileReaderWriter, IDisposable
{
private readonly string _file;
private readonly Stream _io;
public FileReaderWriter(string path)
{
_io = File.Open(_file = Check.NotEmpty(path), FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.None);
}
public void Dispose() { _io.Dispose(); }
...
}
最佳答案
在代码将成功编译的任何情况下,我都对字段使用只读。
为什么?很简单,如果一个字段引用/值突然从永不改变变为改变,它可能会违反类和消费者的微妙假设。因此,我希望收到有关该更改的警报,以便评估此新行为的影响。
关于c# - 关于对类的任何/所有实例成员使用只读的想法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1428807/