Можно ли скрыть конструктор без параметров от пользователя в С#
Я хочу заставить их всегда использовать конструктор с параметрами
например. этот класс позиции
public struct Position
{
private readonly int _xposn;
private readonly int _yposn;
public int Xposn
{
get { return _xposn; }
}
public int Yposn
{
get { return _yposn; }
}
public Position(int xposn, int yposn)
{
_xposn = xposn;
_yposn = yposn;
}
}
Я хочу, чтобы пользователи могли обновлять позицию, задавая координаты x и y
Однако безпараллельный конструктор ВСЕГДА доступен
Я не могу сделать это частным. Или даже определить его как общедоступный
Я прочитал это Почему я не могу определить конструктор по умолчанию для структуры в .NET?
но он действительно не помогает
Если это невозможно - что является лучшим способом определить, есть ли значение, которое я передаю, значения?
Объяснение каждого поля свойств? Есть ли более гладкий способ?
спасибо