<<
>>

Стандартные потоки

Рассмотрим пример программы с использованием стандартных потоков. Пользователю предлагается ввести радиус области видимости, а программа подсчитывает и выводит на экран площадь области, ограниченной данным радиусом.

Первые две строки, с которых начинается программа scope, являются директивами. Первая строка представляет собой директиву препроцессора, вторая — директиву using. Директивы нельзя считать частью языка C++, однако их использование является необходимым.

Первая строка программы #include похожа на оператор, но это на самом деле не так. Она не входит в тело какой-либо из функций и не заканчивается символом «;», как операторы C++. Кроме того, эта строка начинается с символа #.

564

Глава 18. Ввод-вывод и файлы

Такая строка называется директивой препроцессора.
Напомним, что любой оператор является указанием компьютеру совершить какое-либо действие. Директива препроцессора, напротив, является указанием компилятору. Препроцессором называется специальная часть компилятора, обрабатывающая подобные директивы перед началом процесса компиляции кода.

Директива #include предлагает препроцессору включить в компилируемый файл содержимое другого файла. Это содержимое подставляется на место директивы #include. Директива #include действует так же, как действует пользователь, копируя необходимый текст в текстовом редакторе, а затем вставляя его в нужное место документа. Директива #include является одной из многих директив препроцессора, каждая из которых предваряется символом #.

Файл, включаемый с помощью директивы #include, обычно называют заголовочным файлом.

В программе scope директива #include является указанием включить в исходный текст содержимое файла iostream перед компиляцией кода. Имя iostream является примером имени заголовочного (включаемого) файла. Файл iostream содержит описания, необходимые для работы с объектами cout и cin, а таже операциями >. Без этих описаний компилятору не будет известно, что значат имена cout и cin, а употребление операций > будет воспринято как некорректное. Существует множество заголовочных файлов. В стандартном C++ заголовочные файлы не имеют расширения, но те файлы, которые были унаследованы от языка C, имеют расширение .h.

В общем случае области действия всех имен для программы на языке C++ можно разбить на несколько так называемых пространств имен. Пространством имен называется область действия программы, в которой распознается определенная совокупность имен. Эти имена неизвестны за пределами данного пространства имен. Директива using namespace std;

означает, что все определенные ниже имена в программе будут относиться к пространству имен с именем std. Различные элементы программы описаны с использованием пространства имен std, например объекты cout и cin. Если не использовать директиву using, то к этим элементам программы придется каждый раз добавлять имя std:

std::cout

<< | >>

Еще по теме Стандартные потоки:

  1. коян: Восходящий узел - включение в общий поток; Нисходящий узел - исключение из общего потока.
  2. Стандартные точки:
  3. Альбатрос (восхождение на поток)
  4. ТЕОРИЯ ПОТОКА СОЗНАНИЯ
  5. 3.9. ПОТОК СОЗНАНИЯ
  6. ПОТОК СОЗНАНИЯ
  7. 2.2.1. Поток образов
  8. Стандартные точки:
  9. Стандартные точки:
  10. Стандартные точки:
  11. Стандартные точки
  12. Стандартные точки:
  13. Стандартные точки:
  14. Стандартные точки:
  15. Стандартные точки: