41 подписчик
В С# 10, если в структуре определен конструктор с параметрами, то компилятор просто не будет генерировать конструктор без параметров, который в том числе и вызывает инициализаторы вполей. Вместо этого при конструировании экземпляра будет использоваться OpCodes.Initobj который просто инициализирует каждое поле структуры null или значением 0 соответствующего простого типа.
Хорошие новости — C# 11 планирует исправить это поведение.
Около минуты
14 мая 2022