Студопедия — R.3.2 Область видимости
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

R.3.2 Область видимости






Существует четыре области видимости: локальная, функция, файл и класс. Локальная: Имя, описанное в блоке ($$R.6.3), является локальным в этом блоке и может использоваться только в нем и в блоках, содержащихся в этом блоке и появляющихся после момента описания. Имена формальных параметров рассматриваются, как если бы они были описаны в самом объемлющем блоке этой функции. Функция: Метки ($$R.6.1) можно использовать повсюду в функции, в которой они описаны. Только метки имеют область видимости, совпадающую с функцией. Файл: Имя описанное вне всех блоков ($$R.6.3) и классов ($$R.9) имеет область видимости файл и может быть использовано в единице трансляции, в которой оно появляется после момента описания. Имена, описанные с файловой областью видимости, называются глобальными. Класс: Имя члена класса является локальным в своем классе и оно может быть использовано только в функции-члене этого класса ($$R.9.3), или после операции., применяемой к объекту данного класса ($$R.5.2.4) или объекту производного класса($$R.10), или после операции ->, применяемой к указателю на объект данного класса ($$R.5.2.4) или на объект производного класса, или после операции разрешения:: ($$R.5.1), примененной к имени данного или производного класса. Имя, введенное с помощью операции friend ($$R.11.4), принадлежит той же области определенности, что и класс, содержащий описание friend. Класс, впервые описанный в операторе return или в типе параметра, принадлежит к глобальной области видимости.Специальные соглашения действуют на имена, введенные при описаниипараметров функции ($$R.8.2.5) и в описаниях friend ($$R.11.4). Имя может быть скрыто явным описанием того же имени в объемлющемблоке или классе. Скрытое имя члена класса все-таки можноиспользовать, если оно предваряется именем класса, к которомуприменена операция:: ($$R.4.1, $$R.9.4, $$R.10). Скрытое имя объекта,функции, типа или элемента перечисления с файловой областью видимостиможно использовать, если оно предваряется унарной операцией::($$R.5.1). В дополнении к этому, имя класса ($$R.9.1) может бытьскрыто именем объекта, функции или элемента перечисления, имеющеготу же область видимости. Если класс и объект, или функция, илиэлемент перечисления описаны (в любом порядке) с одинаковым именемв одной области видимости, то имя класса становится скрытым. Имякласса, скрытое в локальной области видимости или в областивидимости класса именем объекта, функции или элемента перечисления,все-таки можно использовать, если предварить его подходящейспецификацией class, struct или union ($$R.7.1.6). Аналогично,скрытое имя элемента перечисления можно использовать, еслипредварить его спецификацией типа enum ($$R.7.1.6). В $$R.10.4приводится сводка правил области видимости.Моментом описания имени считается момент завершения описателя имени($$R.8), предшествующей части инициализации (если она есть).Например, int x = 12; { int x = x; } Здесь второе x инициализируется своим собственным (неопределенным)значением. Моментом описания элемента перечисления считается момент сразупосле появления его идентификатора, например: enum { x = x }; Здесь элемент перечисления x опять инициализируется своим собственным(неопределенным) значением.







Дата добавления: 2015-09-04; просмотров: 310. Нарушение авторских прав; Мы поможем в написании вашей работы!



Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...

ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

Теория усилителей. Схема Основная масса современных аналоговых и аналого-цифровых электронных устройств выполняется на специализированных микросхемах...

Потенциометрия. Потенциометрическое определение рН растворов Потенциометрия - это электрохимический метод иссле­дования и анализа веществ, основанный на зависимости равновесного электродного потенциала Е от активности (концентрации) определяемого вещества в исследуемом рас­творе...

Гальванического элемента При контакте двух любых фаз на границе их раздела возникает двойной электрический слой (ДЭС), состоящий из равных по величине, но противоположных по знаку электрических зарядов...

Сущность, виды и функции маркетинга персонала Перснал-маркетинг является новым понятием. В мировой практике маркетинга и управления персоналом он выделился в отдельное направление лишь в начале 90-х гг.XX века...

Тема 5. Организационная структура управления гостиницей 1. Виды организационно – управленческих структур. 2. Организационно – управленческая структура современного ТГК...

Методы прогнозирования национальной экономики, их особенности, классификация В настоящее время по оценке специалистов насчитывается свыше 150 различных методов прогнозирования, но на практике, в качестве основных используется около 20 методов...

Методы анализа финансово-хозяйственной деятельности предприятия   Содержанием анализа финансово-хозяйственной деятельности предприятия является глубокое и всестороннее изучение экономической информации о функционировании анализируемого субъекта хозяйствования с целью принятия оптимальных управленческих...

Studopedia.info - Студопедия - 2014-2024 год . (0.008 сек.) русская версия | украинская версия