Основы программирования на C++. Крыжановская Ю.А. - 8 стр.

UptoLike

Составители: 

8
глобальным именем) область видимости простирается от точки описания до
конца файла, в котором появилось описание. Описание имени в блоке может
скрывать (прятать) описание во внутреннем блоке или глобальное имя. Это
значит, что можно переопределять имя внутри блока для ссылки на другой
объект. После выхода из блока имя вновь обретает свое прежнее
значение.
Например:
int x; // глобальное x
f() {
int x; // локальное x прячет глобальное x
x = 1; // присвоить локальному x
{
int x; // прячет первое локальное x
x = 2; // присвоить второму локальному x
}
x = 3; // присвоить первому локальному x
}
int* p = &x // взять адрес глобального x
Однако скрытие имен следует минимизировать, чтобы избежать до-
полнительных ошибок. Использование для глобальных переменных имен
вроде i или x не рекомендуется. С помощью применения операции разреше-
ния области видимости :: можно использовать скрытое глобальное имя. На-
пример:
int x;
f()
{
int x = 1; // скрывает глобальное x
::x = 2; // присваивает глобальному x
}
Но возможности использовать скрытое локальное имя нет.
Константы
C++ дает возможность записи значений основных типов: символьных
констант, целых констант и констант с плавающей точкой. Кроме того,
ноль (0) может использоваться как константа любого указательного типа, и
символьные строки являются константами типа char[]. Можно также задавать
символические константы. Символическая константаэто имя, значение ко-
торого не может быть изменено в его области
видимости. В C++ имеется три
вида символических констант:
1) любому значению любого типа можно дать имя и использовать его
как константу, добавив к его описанию ключевое слово const;
2) множество целых констант может быть определено как перечисле-
ние;
3) любое имя вектора или функции является константой.
глобальным именем) область видимости простирается от точки описания до
конца файла, в котором появилось описание. Описание имени в блоке может
скрывать (прятать) описание во внутреннем блоке или глобальное имя. Это
значит, что можно переопределять имя внутри блока для ссылки на другой
объект. После выхода из блока имя вновь обретает свое прежнее значение.
Например:
      int x;        // глобальное x
      f() {
        int x;      // локальное x прячет глобальное x
        x = 1;      // присвоить локальному x
        {
          int x;    // прячет первое локальное x
          x = 2;    // присвоить второму локальному x
        }
        x = 3;      // присвоить первому локальному x
      }
      int* p = &x     // взять адрес глобального x
     Однако скрытие имен следует минимизировать, чтобы избежать до-
полнительных ошибок. Использование для глобальных переменных имен
вроде i или x не рекомендуется. С помощью применения операции разреше-
ния области видимости :: можно использовать скрытое глобальное имя. На-
пример:
      int x;
      f()
      {
        int x = 1;     // скрывает глобальное x
        ::x = 2;      // присваивает глобальному x
      }
      Но возможности использовать скрытое локальное имя нет.
Константы
      C++ дает возможность записи значений основных типов: символьных
констант, целых констант и констант с плавающей точкой. Кроме того,
ноль (0) может использоваться как константа любого указательного типа, и
символьные строки являются константами типа char[]. Можно также задавать
символические константы. Символическая константа – это имя, значение ко-
торого не может быть изменено в его области видимости. В C++ имеется три
вида символических констант:
      1) любому значению любого типа можно дать имя и использовать его
      как константу, добавив к его описанию ключевое слово const;
      2) множество целых констант может быть определено как перечисле-
      ние;
      3) любое имя вектора или функции является константой.




                                   8