Как каким-то образом определить тип перечисления как float или double в C #

Здесь сказано , что возможные типы для перечисления - это ] byte , sbyte , short , ushort , int , uint , long или ulong .

Что, если мне понадобится float или double для определения процентных приращений, например 1,5 или 2,5 ]? Я застрял?

Как сказано здесь: http://en.csharp-online.net/.NET_Type_Design_Guidelines%E2%80%94Enum_Design

Перечисление - это структура с набором статических констант. Причина, по которой следует следовать этому руководству, заключается в том, что вы получите некоторый дополнительный компилятор и поддержку отражения, если вы определите перечисление, а не вручную определите структуру со статическими константами.

Поскольку перечисление - это набор констант, почему я не могу использовать константы с плавающей запятой?

Обновление: здесь сказано: http://en.csharp-online.net/.NET_Type_Design_Guidelines% E2% 80% 94Enum_Design "Знаете ли вы, что среда CLR поддерживает перечисления с базовым типом float или double, даже если большинство языков не раскрывают его?"

Поскольку я использую только C #, есть ли способ сделать это с помощью некоторых хаков?

5
задан user310291 3 December 2011 в 22:11
поделиться