C++ Программирование в среде С++ Builder 5

         

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


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

В C++ имеется операция разрешения области действия, позволяющая в такой ситуации обращаться к глобальной переменной, предваряя ее имя символами “ : : ”. Вот пример, поясняющий разрешение области действия:

#include <stdio.h> int aVar = 111; // Глобальная переменная.

int main(void)

{

int aVar == 222; // Локальная переменная.

printf("Local aVar is %d.\n", aVar);

printf("Global aVar is, %d.\n", ::aVar);

return 0;

}



Содержание раздела