Практическое руководство. Объявление перечисления
Обновлен: Ноябрь 2007
Перечисления создаются в разделе объявлений класса или модуля с помощью оператора Enum. Нельзя объявить перечисление в методе. Чтобы указать соответствующий уровень доступа, используйте Private, ProtectedFriend или Public.
Тип Enum имеет имя, базовый тип и набор полей, каждое из которых представляет собой константу. Имя должно быть допустимым квалификатором Visual Basic 2005. Базовый тип должен быть одним из целочисленных типов — Byte, ShortLong или Integer. Тип Integer используется по умолчанию. Перечисления всегда имеют строгие типы и не взаимозаменяемы с целочисленными типами.
Перечисления не могут иметь значений с плавающей точкой. Если перечислению присваивается значение с плавающей точкой при Option Strict On, то это приводит к ошибке компиляции. Если Option StrictOff, то значение автоматически преобразуется к типу Enum.
Сведения об именах и использовании оператора Imports для того, чтобы использовать имена без необходимой квалификации содержатся в разделе Перечисления и уточнение имен.
Объявление перечисления
Напишите объявление, включающее в себя уровень кода доступа, ключевое слово 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
Определите константы в перечислении. По умолчанию первая константа перечисления инициализируется 0, а каждая последующая константа инициализируется значением, на единицу большим, чем значение предыдущей константы. Например, следующее перечисление Days содержит константу с именем Sunday со значением 0, константу с именем Monday со значением 1, константу с именем Tuesday со значением 2 и так далее:
Public Enum Days Sunday Monday Tuesday Wednesday Thursday Friday Saturday End Enum
Следует использовать оператор присваивания, чтобы явным образом присвоить значения константам перечисления. Можно присваивать целочисленные значения, включая отрицательные. Например, константы с отрицательными значениями могут означать ту или иную ошибку. В следующем примере константе 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
Практическое руководство. Определение строки, связанной со значением из перечисления
Основные понятия
Когда следует использовать перечисление
Встроенные константы и перечисления
Типы данных констант и литералов