Это правильный способ объявления неизменяемых структур?
public struct Pair
{
public readonly int x;
public readonly int y;
// Constructor and stuff
}
Я не могу придумать, почему это может вызвать проблемы, но я просто хотел спросить чтобы убедиться.
В этом примере я использовал целые числа. Что, если бы я использовал вместо этого класс, но этот класс также неизменен, вот так? Это тоже должно работать нормально, верно?
public struct Pair
{
public readonly (immutableClass) x;
public readonly (immutableClass) y;
// Constructor and stuff
}
(В сторону: я понимаю, что использование свойств более универсально и позволяет изменять, но эта структура предназначена буквально для хранения двух значений. Меня просто интересует вопрос неизменности здесь.)