Операция - разрешение - область - действие - Большая Энциклопедия Нефти и Газа, статья, страница 2
Закон Митчелла о совещаниях: любую проблему можно сделать неразрешимой, если провести достаточное количество совещаний по ее обсуждению. Законы Мерфи (еще...)

Операция - разрешение - область - действие

Cтраница 2


Когда функция-элемент базового класса переопределяется в производном классе, функция производного класса обычно вызывает одноименную функцию базового и выполняет некоторую дополнительную работу. В случае, когда для вызова функции базового класса не используется операция разрешения области действия, возникает бесконечная рекурсия, так как функция-элемент производного класса фактически вызывает саму себя.  [16]

Функции-элементы имеют внутри класса область действия функцию: переменные, определенные в функции-элементе, известны только этой функции. Если функция-элемент определяет переменную с тем же именем, что и переменная в области действия класс, последняя делается невидимой в области действия функция. Такая скрытая переменная может быть доступна посредством операции разрешения области действия с предшествующим этой операции именем класса.  [17]

Элементы-функции имеют внутри класса область действия функции. Если в функции-элементе определена переменная с тем же именем, что и переменная с областью действия класса, то последняя будет скрыта переменной функции-элемента внутри области действия функции. Доступ к таким скрытым переменным можно получить посредством операции разрешения области действия, поместив перед этой операцией имя класса.  [18]

Обратите внимание на использование двухместной операции разрешения области действия (::) в определении каждой из элементов-функций, следующих за определением класса на рис. 16.3. Сразу после определения класса и объявления его элементов-функций эти элементы-функции должны быть определены. Любая функция-элемент класса может быть определена непосредственно в его теле ( вместо включения туда ее прототипа) или же она может быть определена после тела класса. Поскольку различные классы могут иметь одинаковые имена элементов, операция разрешения области действия привязывает имя элемента к имени класса, однозначно идентифицируя функции-элементы данного класса.  [19]

Производный класс может переопределить функцию-элемент базового класса. При описании в производном классе функции с тем же именем, версия функции производного класса переопределяет версию базового класса. Чтобы сделать доступной для производного класса версию функции базового класса, нужно использовать операцию разрешения области действия.  [20]

21 Примечание унарной операции разрешения области действия Распространенная ошибка программирования. [21]

В С и C возможно объявление локальных и глобальных переменных с одним и тем же именем. В языке С, пока локальная переменная находится в области действия, все ссылки на имя этой переменной относятся к локальной переменной - глобальная переменная не видна в области действия локальной переменной. В языке C предусмотрена унарная операция разрешения области действия (::) для доступа к глобальной переменной, когда в области действия находится локальная переменная с тем же именем. Унарная операция разрешения области действия не может использоваться для доступа к переменной с этим же именем во внешнем блоке. К глобальной переменной можно обращаться непосредственно, без операции разрешения области действия, если имя глобальной переменной не совпадает с именем локальной переменной в области действия. В главе 16 мы обсудим применение двухместной операции разрешения области действия с классами.  [22]

Хотя может показаться, что статические элементы данных подобны глобальным переменным, они имеют область действия класса. Статические элементы могут быть открытыми, закрытыми или защищенными. Статические элементы данных должны быть инициализированы в области действия файла. К закрытым и защищенным статическим элементам класса обращение должно происходить посредством открытых элементов-функций класса. Статические элементы класса существуют, даже если не существует ни одного объекта этого класса. Для обращения к открытому статическому элементу класса в случае, когда не существует ни одного объекта этого класса, просто поместите перед именем элемента имя класса с операцией разрешения области действия.  [23]



Страницы:      1    2