Главная arrow Программирование С++ arrow Вложенные области видимости

Вложенные области видимости

Листинг 9^11. Демонстрационная'программа 7 j
// Демонстрирует вложенные области видимости.
int х; // глобальная х
int main () {
int i; i = 4;
x = 99; // глобальной переменной х присваиваивается значение 99
if(i == 4)  {
inc х; // локальная х
int num; // локальная для оператора if
х - i * 2;
cout « "Outer local x before loop: " « x « "\n" ;
while (x—)  {
int x; // другая локальная x
x = 18;
cout « "Inner local x:  " « x « "\n";
}
cout « "Outer local x after loop: " « x « "\n";
}
//Не может ссылаться здесь на num, так как она локальная // для предшествующего блока if. //   num = 10;
cout « "Global x: " « x « "\n"; }
Далее приведен вывод программы из листинга 9.11. Обратите внимание на то, что все 3 переменные х разные.
Outer local х before loop: 8
Inner local x: 18
Inner local x: 18
Inner local x: 18
Inner local x: 18
Inner local x: 18
Inner local x: 18
Inner local x: 18
Inner local x: 18
Outer local x after loop: -1
Global x: 99