простые типы значение в тип enum
преобразование |
|
из типа |
в тип |
| sbyte byte short ushort int uint long ulong char float double decimal | enum |
Если тип перечисления (например ushort) меньше типа переменной (например long) и значение превышает допустимы диапазон (4294967295), то происходит потеря данных.
Дробные значения всех десятичных типов переменных усекаются, остаются только целые значения.
Дробные значения всех десятичных типов переменных усекаются, остаются только целые значения.
Main.cs
usingSystem;publicenumEn :long{};classProgram {-
publicstaticintMain() { -
sbytesbyteVal = -128; -
//из типа sbyte в тип En -
En E = (En)sbyteVal; -
Console.WriteLine(E); -
Console.ReadKey(); -
return0; -
} }
usingSystem;publicenumEn :long{};classProgram {-
publicstaticintMain() { -
sbytesbyteVal = -128; -
//из типа sbyte в тип En -
En E = (En)sbyteVal; -
Console.WriteLine(E); -
Console.ReadKey(); -
return0; -
} }
-128
тип enum в простые типы значений
преобразование |
|
из типа |
в тип |
| enum | sbyte byte short ushort int uint long ulong char float double decimal |
Main.cs
usingSystem;publicenumEn :long{Ten=-10};classProgram {-
publicstaticintMain() { -
//из типа En в тип sbyte -
sbytesbyteVal = (sbyte)En.Ten; -
Console.WriteLine(sbyteVal); -
Console.ReadKey(); -
return0; -
} }
usingSystem;publicenumEn :long{Ten=-10};classProgram {-
publicstaticintMain() { -
//из типа En в тип sbyte -
sbytesbyteVal = (sbyte)En.Ten; -
Console.WriteLine(sbyteVal); -
Console.ReadKey(); -
return0; -
} }
-10
из типа enum в тип enum
Main.cs
usingSystem;//по умолчанию тип int, если тип не указан явноpublicenumOne {};publicenumTwo :long{Ten=-10};classProgram {-
publicstaticintMain() { -
//из типа Two в тип One -
One O = (One)Two.Ten; -
Console.WriteLine(O); -
Console.ReadKey(); -
return0; -
} }
usingSystem;//по умолчанию тип int, если тип не указан явноpublicenumOne {};publicenumTwo :long{Ten=-10};classProgram {-
publicstaticintMain() { -
//из типа Two в тип One -
One O = (One)Two.Ten; -
Console.WriteLine(O); -
Console.ReadKey(); -
return0; -
} }
-10