Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
веб.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
933.89 Кб
Скачать

3.2.4 Перерахування

Перерахування (enumeration) - це визначений користувачем цілочисельний тип. Коли оголошується перерахування, то визначається набір допустимих значень, які можуть приймати екземпляри перерахувань. Цим значенням повинні бути присвоєні імена, зрозумілі для користувачів. Якщо десь в кодіспробувати привласнити екземпляру перерахування значення, що не входить в список допустимих, компілятор видасть помилку. Існує три явних вигоди від застосування перерахувань замість простих цілих:

        Перерахування полегшують супровід коду, гарантуючи, що змінним будуть присвоюватися тільки легітимні, очікувані значення.

        Перерахування роблять код ясніше, дозволяючи звертатися до цілих значень, називаючи їх осмисленими іменами замість малозрозумілих "магічних" чисел.

        Перерахування полегшують введення вихідного коду.

Оголосити перерахування можна наступним чином:

public enum TimeOfDay

{

Morning = О,

Afternoon = 1,

Evening = 2

}

Істинна міць перерахувань С # пов'язана з тим, що "за лаштунками" вони створюються як структури, успадковані від базового класу System.Enum. Це означає, що для них можна викликати методи, що виконують ряд корисних завдань. Слід зазначити, що завдяки способу реалізації. NET Framework, не відбувається ніяких втрат продуктивності, пов'язаних з синтаксичним трактуванням перерахувань як структур. Практично після компіляції коду перерахування існують у вигляді примітивних типів - таких як int або float.

 

3.2.5 Простори імен

Як уже згадувалося, простори імен надають можливість організації взаємопов'язаних класів та інших типів. На відміну від файлу або компонента, простір імен - швидше логічне поняття, ніж фізичне. При оголошенні класу в файлі С # можна включити його в визначення простору імен. Пізніше, коли в іншому файлі буде оголошуватися інший клас, який виконує якусь пов'язане завдання, його можна включити в той же самий простір імен, створюючи таким чином логічну групу. Розміщення типу в простір імен призначає цьому типу довге ім'я, що складається з простору імен типу у формі послідовності імен, розділених крапками (.), і закінчується ім'ям класу.

Простори імен можна вкладати один в одного, створюючи ієрархічні структури для типів. Кожне ім'я в просторі імен складається з імен просторів, куди воно вкладено, розділених крапками, починаючи з самого зовнішнього імені і закінчуючи власне коротким ім'ям. Простори імен не пов'язані зі збірками. Якщо два простори імен, зазначені в операторах using, містять тип з одним і тим же ім'ям, то в цьому випадку необхідно застосовувати повну форму імені.

С # дозволяє скорочувати повне ім'я класу. Щоб зробити це, необхідно вказати простір імен класу на початку файлу, забезпечивши його ключовим словом using. Іншим застосуванням ключового слова using є призначення псевдонімів класам і просторам імен. Якщо дуже довгі найменування просторів імен, і в коді до них потрібно звертатися декілька разів, то в цьому випадку можна призначити простору імен псевдонім. Для цього застосовується наступний синтаксис:

using псевдонім = НазваПросторуІмен;

 

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]