На этом шаге мы приведем общие сведения об использовании потоков при работе со строками.
Механизм потоковых классов также может использоваться для чтения или записи в строки. У строковых потоков данных имеется буфер, но нет канала ввода-вывода. Для работы с буфером/строкой используются специальные функции. Основная область применения строковых потоков данных - обработка вводимых/выводимых данных независимо от фактического механизма ввода-вывода. Например, выводимый текст можно отформатировать в строке и передать в выходной канал позднее. Другой вариант - ввод данных по строкам и обработка строк с использованием строковых потоков данных.
Исходные потоковые классы для строк в стандартной библиотеке C++ были заменены набором новых классов. Раньше в классах строковых потоков данных для представления строк использовался тип char*. Теперь для этой цели используется тип string (или в общем случае - basic_string<>). Прежние классы строковых потоков данных также являлись частью стандартной библиотеки C++, но сейчас они считаются устаревшими. Они продолжают поддерживаться для обеспечения обратной совместимости, но могут быть исключены из будущих версий стандарта. Прежние классы в новые программы включаться не будут, а в унаследованном коде произойдет их постепенная замена.
На следующем шаге мы рассмотрим классы строковых потоков данных.