Шаг 459.
Библиотека STL. Ввод-вывод с использованием потоковых классов. Общие сведения о потоках ввода-вывода. Манипуляторы

    На этом шаге мы приведем общие сведения о манипуляторах.

    В конце большинства команд потокового ввода-вывода записывается так называемый манипулятор:

  std::cout << std::endl

    Манипуляторы - специальные объекты, предназначенные для управления потоком данных. Часто манипуляторы изменяют только режим интерпретации ввода или форматирования вывода (например, манипуляторы выбора системы счисления dec, hex и oct). Это означает, что манипуляторы потока данных ostream не всегда создают выходные данные, а манипуляторы потока данных istream не всегда интерпретируют ввод. Однако некоторые манипуляторы выполняют непосредственные действия - очистку выходного буфера, переключение в режим игнорирования пропусков при вводе и т. д.

    Манипулятор endl обозначает "конец строки", а при его выводе выполняются две операции.

  1. Отправка признака новой строки (то есть символа \n) в выходной поток данных.
  2. Очистка выходного буфера (принудительный вывод всех буферизованных данных методом flush()).

    Наиболее важные манипуляторы библиотеки IOStream перечислены в таблице 1.

Таблица 1. Важнейшие манипуляторы библиотеки IOStream
Манипулятор Класс Описание
endl ostream Вывод \n и очистка выходного буфера
ends ostream Вывод \0
flush ostream Очистка выходного буфера
ws istream Чтение с игнорированием пропусков

    На следующем шаге мы рассмотрим простой пример использования потоковых классов.




Предыдущий шаг Содержание Следующий шаг