Структуре не разрешается объявлять деструктор (раздел 11.3.9).
ли скрыть конструктор без параметров от пользователя в C #
Я хочу заставить их всегда использовать конструктор с параметрами
например этот класс позиции
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?
но это не очень помогает
Если это невозможно - как лучше всего определить, имеет ли Позиция, которую мне передают, значения?
Проверка простоты каждого поля свойства? Есть ли более приятный способ?
Спасибо