У меня есть следующий класс:
class SampleClass
{
private ArrayList mMyList;
SampleClass()
{
// Initialize mMyList
}
public ArrayList MyList
{
get { return mMyList;}
}
}
Я хочу, чтобы пользователи могли получать mMyList, поэтому я разоблачил "get" через свойство, но я не хочу, чтобы изменения, которые они вносили в объект (например, MyList.Add(новый класс());) чтобы вернуться в мой класс.
Я думаю, я могу вернуть копию объекта, но это может быть медленным, и я ищу способ, который предоставит ошибку времени компиляции, информируя пользователя о том, что они не должны ожидать, что смогут изменить возвращенный значение из свойства.
Возможно ли это?