Приведение перечисления к числу в C#
Значение enum нельзя подставить туда,
где ждут обычный int: это отдельный тип.
Номер читают записью (int) вокруг
значения.
Запись (int)Level.High дает
целое с тем числом, которое задано в объявлении.
Запишем перечисление с явными кодами и выведем
число для High:
Console.WriteLine((int)Level.High);
enum Level { Low = 1, High = 5 }
Тот же прием сохраняет код в переменную перед выводом или сравнением с обычным числом. Запишем скидку и выведем процент:
Discount d = Discount.Mega;
int percent = (int)d;
Console.WriteLine(percent);
enum Discount {
None = 0,
Sale = 10,
Mega = 30
}
Объявите enum Traffic:
City - 60, Road - 90,
Highway - 110.
Выведите лимит для Traffic.Road как целое.
Объявите enum HttpStatus
и код 200 для Ok.
Сохраните HttpStatus.Ok в переменную,
выведите её числовой код.
Объявите enum Traffic:
City - 60, Road - 90,
Highway - 110.
Выведите три строки "name:limit"
в порядке объявления констант, каждую с новой строки;
лимит выводите числом.