Share via


Что такое, черт возьми, ENUM (перечисление)?

В моем недавнем посте Исследуйте вашу среду [Environment] я сказал следующее:

PS> [System.Environment+SpecialFolder]

IsPublic IsSerial Name BaseType
-------- -------- ---- --------
False True SpecialFolder System.Enum

Заметьте, что это перечисление (ENUM). Прелесть перечислений в том, что когда вы указываете неправильное значение – они сообщают, каковы допустимые значения:

В одном из комментариев было сказано, что многие люди не представляют, о чем я говорю, так что я потрачу минутку, чтобы объяснить.

ENUM – это сокращение от ENUMERATION (перечисление). В .NET, ENUM – это базовый класс для набора именованных констант (named constants). Вы можете считать, что это массив строк (это не совсем корректно, но для наших целей – этого достаточно). Итак, когда вы видите что-то, что принимает ENUM, это означает, что принимается не любая строка, а только одна строка из набора.

Каков допустимый набор строк? В этом и прелесть перечисления, что оно скажет вам об этом само. Все что вам требуется – указать неправильное значение и оно скажет вам, каковы допустимые значения.

Наслаждайтесь

 

Джеффри Сновер (Jeffrey Snover) [MSFT]
Windows Management Partner Architect
Посетите английский блог команды  Windows PowerShell:    https://blogs.msdn.com/PowerShell
Посетите Windows PowerShell ScriptCenter:  https://www.microsoft.com/technet/scriptcenter/hubs/msh.mspx