Поделиться через


Практическое руководство. Объявление перечисления

Обновлен: Ноябрь 2007

Перечисления создаются в разделе объявлений класса или модуля с помощью оператора Enum. Нельзя объявить перечисление в методе. Чтобы указать соответствующий уровень доступа, используйте Private, ProtectedFriend или Public.

Тип Enum имеет имя, базовый тип и набор полей, каждое из которых представляет собой константу. Имя должно быть допустимым квалификатором Visual Basic 2005. Базовый тип должен быть одним из целочисленных типов — Byte, ShortLong или Integer. Тип Integer используется по умолчанию. Перечисления всегда имеют строгие типы и не взаимозаменяемы с целочисленными типами.

Перечисления не могут иметь значений с плавающей точкой. Если перечислению присваивается значение с плавающей точкой при Option Strict On, то это приводит к ошибке компиляции. Если Option StrictOff, то значение автоматически преобразуется к типу Enum.

Сведения об именах и использовании оператора Imports для того, чтобы использовать имена без необходимой квалификации содержатся в разделе Перечисления и уточнение имен.

Объявление перечисления

  1. Напишите объявление, включающее в себя уровень кода доступа, ключевое слово Enum и допустимое имя, как в следующих примерах, каждый из которых объявляет различные Enum.

    Private Enum SampleEnum
            SampleMember
        End Enum
        Public Enum SampleEnum2
            SampleMember
        End Enum
        Protected Enum SampleEnum3
            SampleMember
        End Enum
        Friend Enum SampleEnum4
            SampleMember
        End Enum
        Protected Friend Enum SampleEnum5
            SampleMember
        End Enum
    
  2. Определите константы в перечислении. По умолчанию первая константа перечисления инициализируется 0, а каждая последующая константа инициализируется значением, на единицу большим, чем значение предыдущей константы. Например, следующее перечисление Days содержит константу с именем Sunday со значением 0, константу с именем Monday со значением 1, константу с именем Tuesday со значением 2 и так далее:

    Public Enum Days
      Sunday
      Monday
      Tuesday
      Wednesday
      Thursday
      Friday
      Saturday
    End Enum
    
  3. Следует использовать оператор присваивания, чтобы явным образом присвоить значения константам перечисления. Можно присваивать целочисленные значения, включая отрицательные. Например, константы с отрицательными значениями могут означать ту или иную ошибку. В следующем примере константе Invalid явным образом присваивается значение –1, а константе Sunday — значение 0. Поскольку константа Saturday идет в перечислении первой, она также инициализируется 0. Значением Monday является 1 (на единицу больше, чем значение Sunday); значением Tuesday является 2 и т. д.

    Public Enum WorkDays
      Saturday
      Sunday = 0
      Monday
      Tuesday
      Wednesday
      Thursday
      Friday
      Invalid = -1
    End Enum
    

Данный пример также доступен в виде фрагмента кода IntelliSense. В окне выбора фрагмента кода он находится в разделе Язык Visual Basic. Дополнительные сведения см. в разделе Практическое руководство. Вставка фрагментов в код (Visual Basic).

Явное объявление перечисления

  • Объявление записывается с использованием следующего синтаксиса:

    Public Enum MyEnum As Byte
      Zero
      One
      Two
    End Enum
    

См. также

Задачи

Практическое руководство. Ссылка на член перечисления

Практическое руководство. Перебор элементов перечисления в Visual Basic

Практическое руководство. Определение строки, связанной со значением из перечисления

Основные понятия

Перечисления и уточнение имен

Когда следует использовать перечисление

Встроенные константы и перечисления

Типы данных констант и литералов

Другие ресурсы

Константы в Visual Basic