4.1 Область Видимости
4.1 Область Видимости
Есть четыре вида областей видимости: локальная, файл, программа и класс.
Локальная: Имя, описанное в блоке (#9.2), локально в этом блоке и может использоваться только в нем после места описания и в охватываемых блоках. Исключение составляют метки (#9.12), которые могут использоваться в любом месте функции, в которой они описаны. Имена формальных параметров функции рассматриваются так, как если бы они были описаны в самом внешнем блоке этой функции.
Файл: Имя, описанное вне любого блока (#9.2) или класса (#8.5), может использоваться в файле, где оно описано, после места описания.
Класс: Имя члена класса локально для его класса и может использоваться только в функции члене этого класса (#8.5.2), после примененной к объекту его класса (#7.1) операции . или после примененной к указателю на объект его класса (#7.1) операции -». На статические члены класса (#8.5.1) и функции члены можно также ссылаться с помощью операции :: там, где имя их класса находится в области видимости. Класс, описанный внутри класса (#8.5.15), не считается членом, и его имя прнадлежит охватывающей области видимости.
Имя может быть скрыто посредством явного описания того же имени в блоке или классе. Имя в блоке или классе может быть скрыто только именем, описанным в охватываемом блоке или классе. Скрытое нелокальное имя также может использоваться, когда его область видимости указана операцией :: (#7.1). Имя класса, скрытое именем, которое не является именем типа, все равно может использоваться, если перед ним стоит class, struct или union (#8.2). Имя перечисления enum, скрытое имнем, которое не является именем типа, все равно может исползоваться, если перед ним стоит enum (#8.2).
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
7. Изменение значений по умолчанию для типов, область видимости
7. Изменение значений по умолчанию для типов, область видимости Пусть в новой программе почти все переменные являются целочисленными. Тогда удобно осуществлять их объявление так, чтобы переменная, для которой не указан тип, больше не объявлялась как variant. Для этого
R.3.2 Область видимости
R.3.2 Область видимости Существует четыре области видимости: локальная, функция, файл и класс.Локальная: Имя, описанное в блоке (§R.6.3), является локальным в этом блоке и может использоваться только в нем и в блоках, содержащихся в этом блоке и появляющихся после момента
R.16.3.4 Область видимости макроимен и конструкция #undef
R.16.3.4 Область видимости макроимен и конструкция #undef После появления макроопределения идентификатор из него считается определенным и остается в текущей области видимости (независимо от правил областей видимости в С++) до конца единицы трансляции или пока его определение
8. Область видимости и время жизни
8. Область видимости и время жизни В этой главе обсуждаются два важных вопроса, касающиеся объявлений в С++. Где употребляется объявленное имя? Когда можно безопасно использовать объект или вызывать функцию, т.е. каково время жизни сущности в программе? Для ответа на
8.1. Область видимости
8.1. Область видимости Каждое имя в С++ программе должно относиться к уникальной сущности (объекту, функции, типу или шаблону). Это не значит, что оно встречается только один раз во всей программе: его можно повторно использовать для обозначения другой сущности, если
8.1.1. Локальная область видимости
8.1.1. Локальная область видимости Локальная область видимости – это часть исходного текста программы, содержащаяся в определении функции (или блоке внутри тела функции). Все функции имеют свои локальные области видимости. Каждая составная инструкция (или блок) внутри
9.1.4. Перегрузка и область видимости A
9.1.4. Перегрузка и область видимости A Все перегруженные функции объявляются в одной и той же области видимости. К примеру, локально объявленная функция не перегружает, а просто скрывает глобальную:#include stringvoid print( const string );void print( double ); // перегружает print()void fooBar( int ival ){//
Пример 19-1. Область видимости переменных
Пример 19-1. Область видимости переменных #!/bin/bash# subshell.shechoouter_variable=Outer(inner_variable=Innerecho "Дочерний процесс, "inner_variable" = $inner_variable"echo "Дочерний процесс, "outer" = $outer_variable")echoif [ -z "$inner_variable" ]then echo "Переменная inner_variable не определена в родительской оболочке"else echo "Переменная inner_variable
Пример 22-8. Область видимости локальных переменных
Пример 22-8. Область видимости локальных переменных #!/bin/bashfunc (){ local loc_var=23 # Объявление локальной переменной. echo echo ""loc_var" в функции = $loc_var" global_var=999 # Эта переменная не была объявлена локальной. echo ""global_var" в функции = $global_var"}func# Проверим, "видна" ли локальная переменная
Область видимости параметров
Область видимости параметров Область видимости параметров определяется в точности так же, как область видимости переменных. Единственным, на что следует обратить здесь внимание — это то, что элементы xsl:param, определяемые в шаблонах, должны всегда быть его первыми
2.1.1 Область Видимости
2.1.1 Область Видимости Описание вводит имя в области видимости. То есть, имя может использоваться только в определенной части программы. Для имени, описанного в функции (такое имя часто называют локальным), эта область видимости простирается от точки описания до конца
4.1 Область Видимости
4.1 Область Видимости Есть четыре вида областей видимости: локальная, файл, программа и класс.Локальная: Имя, описанное в блоке (#9.2), локально в этом блоке и может использоваться только в нем после места описания и в охватываемых блоках. Исключение составляют метки (#9.12),