ostrstream 类
描述控制元素插入的对象,并将对象编码到 strstreambuf 类的流缓冲区中。
语法
class ostrstream : public ostream
备注
该对象存储 strstreambuf
类的对象。
注意
此类已弃用。 请考虑使用 ostringstream 或 wostringstream 作为替代。
构造函数
构造函数 | 说明 |
---|---|
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)(其中 sb
是 strstreambuf 类的存储的对象)来初始化基类。 第一个构造函数还可调用 strstreambuf
来初始化 sb
。 第二个构造函数以下列两种方式之一初始化基类:
如果
_Mode
和 ios_base::app== 0,则ptr
必须指定count
元素数组的第一个元素,且构造函数调用strstreambuf
(ptr
,count
,ptr
)。否则,
ptr
必须指定包含 C 字符串的计数元素数组的第一个元素(其第一个元素由ptr
指定),并且构造函数调用strstreambuf
(ptr
,count
,ptr
+strlen
(ptr
) )。
ostrstream::pcount
返回写入到受控序列的元素计数。
streamsize pcount() const;
返回值
写入到受控序列的元素数。
备注
示例
有关使用 pcount
的示例,请参阅 strstream::pcount。
ostrstream::rdbuf
返回指向流关联的 strstreambuf 对象的指针。
strstreambuf *rdbuf() const
返回值
指向流关联的 strstreambuf 对象的指针。
注解
此成员函数将 pointer
类型的已存储流缓冲区的地址返回到 strstreambuf。
示例
有关使用 rdbuf
的示例,请参阅 strstreambuf::pcount。
ostrstream::str
调用 freeze,然后将返回指向受控序列开头的指针。
char *str();
返回值
指向受控序列的开头的指针。
备注
示例
有关使用 str
的示例,请参阅 strstream::str。