- По умолчанию первое значение перечисления равно 0, которое можно явно присвоить enum-у.
- Вы можете определить базовый тип enum, например enum E: short {}, sizeof(E) == 2; int по умолчанию.
- Перечисленная цепочка наследования: ValueType->Enum->enum)
- Преобразование между типом enum и базовым является явным, за исключением 0, поскольку существует неявное преобразование из 0 в любой тип enum.
- ToString() enum-а выводит идентификатор её enum-значения,
- Из строки в перечисление: AEnumType a = (AEnumType) Enum.Parse(typeof(AEnumType), «флаг»); может не получиться, и код должен включать механизмы обработки исключений.
- Вы можете использовать Enum.IsDefined(), чтобы проверить, включено ли значение в enum.
если (! Enum.IsDefined(typeof(SearchMode), опции)) бросить новое ArgumentException(Properties.Resources.InvalidEnumerationValue, «options»);
SearchMode — это тип enum, если значение опций передачи не входит в область действия этого определения enum,Например, если enum определяет 1,2, а опции взяты из 3 заклинаний, то метод IsDefined возвращает false.
|