ostrstream 类

描述控制元素插入的对象,并将对象编码到 strstreambuf 类的流缓冲区中。

语法

class ostrstream : public ostream

备注

该对象存储 strstreambuf 类的对象。

注意

此类已弃用。 请考虑使用 ostringstreamwostringstream 作为替代。

构造函数

构造函数 说明
ostrstream 构造 ostrstream 类型的对象。

成员函数

成员函数 说明
freeze 导致无法通过流缓冲区操作使用流缓冲区。
pcount 返回写入到受控序列的元素计数。
rdbuf 返回指向流的关联 strstreambuf 对象的指针。
str 调用 freeze,然后将返回指向受控序列开头的指针。

要求

标头:<strstream>

命名空间: std

ostrstream::freeze

导致无法通过流缓冲区操作使用流缓冲区。

void freeze(bool _Freezeit = true);

参数

_Freezeit
bool 指示是否要冻结流。

备注

此成员函数调用 rdbuf ->freeze(_ Freezeit)。

示例

有关使用 freeze 的示例,请参阅 strstream::freeze

ostrstream::ostrstream

构造 ostrstream 类型的对象。

ostrstream();

ostrstream(char* ptr,
    streamsize count,
    ios_base::openmode _Mode = ios_base::out);

参数

ptr
缓冲区。

count
缓冲区的大小(字节)。

_Mode
缓冲区的输入和输出模式。 有关详细信息,请参阅 ios_base::openmode

注解

这两个构造函数均可通过调用 ostream(sb)(其中 sbstrstreambuf 类的存储的对象)来初始化基类。 第一个构造函数还可调用 strstreambuf 来初始化 sb。 第二个构造函数以下列两种方式之一初始化基类:

  • 如果 _Modeios_base::app== 0,则 ptr 必须指定 count 元素数组的第一个元素,且构造函数调用 strstreambuf(ptrcountptr)。

  • 否则,ptr 必须指定包含 C 字符串的计数元素数组的第一个元素(其第一个元素由 ptr 指定),并且构造函数调用 strstreambuf(ptr, count, ptr + strlen( ptr) )。

ostrstream::pcount

返回写入到受控序列的元素计数。

streamsize pcount() const;

返回值

写入到受控序列的元素数。

备注

此成员函数返回 rdbuf ->pcount

示例

有关使用 pcount 的示例,请参阅 strstream::pcount

ostrstream::rdbuf

返回指向流关联的 strstreambuf 对象的指针。

strstreambuf *rdbuf() const

返回值

指向流关联的 strstreambuf 对象的指针。

注解

此成员函数将 pointer 类型的已存储流缓冲区的地址返回到 strstreambuf

示例

有关使用 rdbuf 的示例,请参阅 strstreambuf::pcount

ostrstream::str

调用 freeze,然后将返回指向受控序列开头的指针。

char *str();

返回值

指向受控序列的开头的指针。

备注

此成员函数返回 rdbuf ->str

示例

有关使用 str 的示例,请参阅 strstream::str

另请参阅

ostream
C++ 标准库中的线程安全
iostream 编程
iostreams 约定