Поделиться через


Класс basic_ostringstream

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

Синтаксис

template <class Elem, class Tr = char_traits<Elem>, class Alloc = allocator<Elem>>
class basic_ostringstream : public basic_ostream<Elem, Tr>

Параметры

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

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

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

Замечания

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

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

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

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

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

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

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

Требования

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

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

basic_ostringstream::allocator_type

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

typedef Alloc allocator_type;

basic_ostringstream::basic_ostringstream

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

explicit basic_ostringstream(ios_base::openmode _Mode = ios_base::out);

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

Параметры

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

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

Замечания

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

Второй конструктор инициализирует базовый класс путем вызова basic_ostream( sb ). Он также инициализируется sb путем вызова basic_stringbuf< Elem, Tr, Alloc >( str, _Mode | ios_base::out ).

basic_ostringstream::rdbuf

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

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

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

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

Замечания

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

Пример

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

basic_ostringstream::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