Что означает ограничение "struct"?
Это означает любой необнуляемый тип значения. Все структуры являются типами значений.
Я хочу знать, что это означает только структуры или любой тип, производный от типа значения, такого как int, double, enum, ant и так далее. Позволяет ли следующий код использовать простые типы?
Ваши так называемые "простые типы", такие как int
, double
и enum
, являются не чем иным, как ключевыми словами C #, которые соответствуют структурам System.Int32
и System.Double
, и классом System.Enum
, который основанный на System.ValueType
(который делает перечисления также типами значений, несмотря на то, что Enum
является самим классом).
Следовательно, эти типы также удовлетворяют ограничению where T : struct
, наряду с регулярными структурами.