ПРОСТРАНСТВА ИМЁН: ПРЕДНАЗНАЧЕНИЕ И ВИДЫ - Студенческий научный форум

VIII Международная студенческая научная конференция Студенческий научный форум - 2016

ПРОСТРАНСТВА ИМЁН: ПРЕДНАЗНАЧЕНИЕ И ВИДЫ

 Комментарии
Текст работы размещён без изображений и формул.
Полная версия работы доступна во вкладке "Файлы работы" в формате PDF
Пространстваимен – это множества, созданные для группировки уникальных идентификаторов, помогающие избегать конфликтов имен (идентификаторов). Все идентификаторы, принадлежащие одному пространству имен, имеют доступ друг к другу без подробностей. Идентификаторы, не принадлежащие пространству имен, имеют возможность получения доступа к членам, применяя полное имя, using для некоторого идентификатора или для всех идентификаторов в пространстве имен. Код в файлах заглавий всегда должен содержать полное имя в пространстве имен.

Инструкция namespace (от англ. пространство имен) ограничивает область видимости имен, используемых в заданном пространстве имен, что позволяет эксплуатацию одного и того же имени в разных контекстах без появления конфликтов. Основная форма применения namespace:

namespaceимя {

// объявления

}

Для получения доступа к члену пространства имен извне впереди имени члена указывается имя пространства имен с оператором расширения области видимости.

Подробнее рассмотрим инструкцию using. При частом обращении к членам пространства имен постоянное указание имени пространства имен и оператора расширения видимости требует времени. В связи с этим была разработана инструкция using, которая имеет две основные формы:

  1. using namespace имя; Применение этой формы позволяет получить доступ ко всем членам, указанным в данном пространстве имен, и производить работу непосредственно с ними.

  2. using имя::член; При применении этой формы видимым становится только данный член пространства имен.

Также можно выделить несколько разновидностей пространств: вложенные, встроенные и анонимные, или неименованные.

  1. Вложенные пространства имен — пространства, имеющие абсолютный доступ к членам родительского пространства, в то время как члены родительского не обладают таким доступом к вложенному пространству. Пространства имен применяются для инкапсулирования данных, не принадлежащих интерфейсу родительского пространства имен.

  2. Встроенные пространства имен — пространства, обрабатывающиеся как члены родительского пространства, что позволяет: выполнение поиска перегруженных функций; объявление специализации для шаблонов. Также используется в качестве механизма управления изменениями в библиотеке.

  3. Анонимные, или неименованные, пространства имен — явные пространства без присвоения им имени. Используются при выполнении объявлений переменных невидимыми для других файлов без создания именованного пространства. Весь код того файла будет определять идентификаторы в неименованном пространстве имен, но при этом идентификаторы и пространство имен будут невидимы вне файла.

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

Список используемой литературы:

  1. Либерти Д. Освой самостоятельно С++ за 21 день: Учебное пособие: [пер. с англ.] / Д. Либерти. – 3-е изд. – Москва : Вильямс, 2000. – 815 стр.

Просмотров работы: 560