Класс basic_stringstream

Описывает объект, который управляет вставкой и извлечением элементов и закодированными объектами с помощью буфера потока класса basic_stringbuf<Elem, Tr, . Alloc>

Синтаксис

template <class Elem, class Tr = char_traits<Elem>, class Alloc = allocator<Elem>>
class basic_stringstream : public basic_iostream<Elem, Tr>

Параметры

Alloc
Класс распределителя.

Elem
Тип основного элемента строки.

Tr
Признаки символа, соответствующие основному элементу строки.

Замечания

Шаблон класса описывает объект, который управляет вставкой и извлечением элементов и закодированными объектами с помощью буфера потока класса basic_stringbuf<Elem, Tr, Alloc>с элементами типаElem, признаки символов которых определяются классомTr, и элементы которых выделяются распределителем класса.Alloc Объект сохраняет объект класса basic_stringbuf<Elem, Tr, Alloc>.

Конструкторы

Конструктор Description
basic_stringstream Создает объект типа basic_stringstream.

Определения типов

Введите имя Description
allocator_type Этот тип является синонимом для параметра шаблона Alloc.

Функции элементов

Функция-член Description
rdbuf Возвращает адрес буфера хранимого потока типа pointer в basic_stringbuf<Elem, Tr, . Alloc>
str Задает или получает текст в буфере строк без изменения позиции записи.

Требования

Заголовок:<sstream>

Пространство имен: std

basic_stringstream::allocator_type

Этот тип является синонимом для параметра шаблона Alloc.

typedef Alloc allocator_type;

basic_stringstream::basic_stringstream

Создает объект типа basic_stringstream.

explicit basic_stringstream(ios_base::openmode _Mode = ios_base::in | ios_base::out);

explicit basic_stringstream(const basic_string<Elem, Tr, Alloc>& str, ios_base::openmode _Mode = ios_base::in | ios_base::out);

Параметры

_Режим
Одно из перечислений в ios_base::openmode.

str
Объект типа basic_string.

Замечания

Первый конструктор инициализирует базовый класс путем вызова basic_iostream(sb), где sb хранится объект класса basic_stringbuf<Elem, Tr, Alloc>. Он также инициализируется sb путем вызова basic_stringbuf<Elem, Tr, Alloc>( _Mode).

Второй конструктор инициализирует базовый класс путем вызова basic_iostream( sb). Он также инициализируется sb путем вызова basic_stringbuf<Elem, Tr, Alloc>(_ Str, _Mode).

basic_stringstream::rdbuf

Возвращает адрес буфера хранимого потока указателя типа на basic_stringbuf<Elem, Tr, . Alloc>

basic_stringbuf<Elem, Tr, Alloc> *rdbuf() const;

Возвращаемое значение

Адрес буфера хранимого потока типа pointer для basic_stringbuf<Elem, Tr, Alloc>.

Пример

Пример, в котором используется rdbuf, см. в разделе basic_filebuf::close.

basic_stringstream::str

Задает или получает текст в буфере строк без изменения позиции записи.

basic_string<Elem, Tr, Alloc> str() const;

void str(
    const basic_string<Elem, Tr, Alloc>& _Newstr);

Параметры

_Newstr
Новая строка.

Возвращаемое значение

Возвращает объект класса basic_string<Elem, Tr, Alloc>контролируемый последовательностью которого является копия последовательности, *thisуправляемой.

Замечания

Первая функция-член возвращает rdbuf ->str. Вторая функция-член вызывает rdbuf ->str( _Newstr).

Пример

Пример использования strсм. в разделе basic_stringbuf::str.

См. также

Потокобезопасность в стандартной библиотеке C++
Программирование iostream
Соглашения iostreams