Класс 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