enum

Синтаксис:
[атрибут] модификатор enum имя_перечисления : тип {именованные константы};
Скрыть

Показать

Копировать
 Main.cs 
  • using System;
  •  
  • //глобальное объявление
  • public enum Color : ushort { RED, BLUE, YELLOW };
  •  
  • //локальное объявление в классе или структуре
  • public class A {
  •  //если тип не указан явно, то по умолчанию int
  •  //явно задаем значение именованной константе
  •  public enum Digit { ZERO, ONE, TWO, TEN=10 };
  • }
  •  
  • class Program {
  •  public static int Main() {
  •   //метод GetTypeCode() возвращает системный тип именованной константы
  •   Console.WriteLine("системный тип : {0}", Color.RED.GetTypeCode());
  •   //доступ к членам перечисления
  •   Console.WriteLine(Color.RED);
  •   //доступ к числовому значению, требуется явное приведение к типу
  •   Console.WriteLine((ushort)Color.RED);
  •   //арифметические действия над членами перечисления
  •   ushort res=(ushort)Color.RED+(ushort)Color.BLUE+(ushort)Color.YELLOW;
  •   Console.WriteLine(res);
  •   //метод GetTypeCode() возвращает системный тип именованной константы
  •   Console.WriteLine("системный тип : {0}", A.Digit.ONE.GetTypeCode());
  •   Console.WriteLine(A.Digit.TEN+"="+(int)A.Digit.TEN);
  •   Console.ReadKey();
  •   return 0;
  •  }
  • }
системный тип : UInt16
RED
0
3
системный тип : Int32
TEN=10