progs.biz  
Начало>C#>Основы>Урок 68
C#
VB.NET
Visual C++.NET
ASP.NET
Visual C++ 6
WinAPI
C/C++
Delphi
C++ Builder
Java
SQL
PHP
DirectX
Visual Basic 6.0
Ассемблер
Интернет
Сист. прогр-ние
Pocket PC
Обзор книг
Обзор программ

Разработка Web-приложений на Microsoft Visual Basic.NET и Microsoft Visual C#.NET. Учебный курс MCAD/MCSD.
 Разработка Web-приложений на Microsoft Visual Basic.NET и Microsoft Visual C#.NET. Учебный курс MCAD/MCSD.
Заказать на Озоне



Яндекс-цитирования

Основы C#
Урок 68. Работа с перечислениями (enum)

Перечисления (enum) - это определенный программистом тип, который может принимать только ограниченный набор значений. Типичный пример - это дни недели (их всего семь). Или, например, типы доступа с чему-либо (полный доступ, доступ только на чтение и отсутствие доступа).

Вот примеры определения перечисления:

public enum MyColors : byte
{
    Red,
    Yellow,
    Green
}
public enum Values
{
    Seven = 7,
    Eight = 8,
    Ten = 10
}

В первом вы видите необязательную часть - это указание типа, на котором основано перечисление (byte в нашем случае). Во втором тоже есть необязательная часть - это числовые величины для значений перечисления.

А вот пример использования первого перечисления:

// Использлование enum.
MyColors color = MyColors.Green;

// Получение строки из значения enum'а.
Console.WriteLine(color.ToString());
// Получение значения enum'а из строки.
MyColors mycolor = (MyColors)Enum.Parse(typeof(MyColors), "Red");

// Получение всех строковых значений enum'а.
string[] s = Enum.GetNames(typeof(MyColors));

// Получение всех значений enum'а.
Array ar = Enum.GetValues(typeof(MyColors));
MyColors col = (MyColors)ar.GetValue(1);

// Получение типа, на котором основан enum.
Type type = Enum.GetUnderlyingType(typeof(MyColors));

Как вы видите, вы пожете не только работать с переменными, имеющими тип вашего перечисления, но и получаеть информацию о самом типе (например, получить все значения перечисляемого типа (в том числе сразу в виде строкового массива) или получить тип, на котором перечисление основано (byte в нашем случае)).

Рассылки нашего сайта на Subscribe.Ru
Visual C++, MFC
C# и .NET
VB.NET
ASP.NET new!
Win API
C/C++
Delphi
Java
HTML, PHP, mySQL, WEB-дизайн
Flash MX
C++ Builder
Ассемблер
SQL Server
DirectX
Обзор книг
Обзор программ
Новости сайта progs.biz


 
 
Копирование любых материалов сайта без разрешения авторов и владельцев сайта запрещено.
© 2002-2008 сайт progs.biz
© 2002-2008 Игорь Алексеев