描述控制元素插入的对象,并将对象编码到 strstreambuf 类的流缓冲区中。
语法
class ostrstream : public ostream
备注
该对象存储 strstreambuf 类的对象。
注意
此类已弃用。 请考虑使用 ostringstream 或 wostringstream 作为替代。
构造函数
| 构造函数 | 说明 |
|---|---|
| ostrstream | 构造 ostrstream 类型的对象。 |
成员函数
| 成员函数 | 说明 |
|---|---|
| 冻结 | 导致无法通过流缓冲区操作使用流缓冲区。 |
| pcount | 返回写入到受控序列的元素计数。 |
| rdbuf | 返回指向流的关联 strstreambuf 对象的指针。 |
| str | 调用 freeze,然后将返回指向受控序列开头的指针。 |
要求
标头:strstream<>
命名空间: std
ostrstream::freeze
导致无法通过流缓冲区操作使用流缓冲区。
void freeze(bool _Freezeit = true);
参数
_Freezeit
bool 指示是否要冻结流。
备注
此成员函数调用 rdbuf ->freeze(_ Freezeit)。
示例
ostrstream::ostrstream
构造 ostrstream 类型的对象。
ostrstream();
ostrstream(char* ptr,
streamsize count,
ios_base::openmode _Mode = ios_base::out);
参数
ptr
缓冲区。
计数
缓冲区的大小(字节)。
_Mode
缓冲区的输入和输出模式。 有关详细信息,请参阅 ios_base::openmode。
备注
这两个构造函数均可通过调用 ostream(sb)(其中 是 sb 类的存储的对象)来初始化基类。 第一个构造函数还可调用 sb 来初始化 strstreambuf。 第二个构造函数以下列两种方式之一初始化基类:
如果
_Mode和 ios_base::app== 0,则ptr必须指定count元素数组的第一个元素,且构造函数调用strstreambuf(ptr,count,ptr)。否则,
ptr必须指定计数元素数组的第一个元素,该元素包含其第一个元素由ptr其指定的 C 字符串,以及构造函数调用strstreambuf(, ,ptrcountptr+strlen(ptr))。
ostrstream::p count
返回写入到受控序列的元素计数。
streamsize pcount() const;
返回值
写入到受控序列的元素数。
备注
示例
ostrstream::rdbuf
返回指向流关联的 strstreambuf 对象的指针。
strstreambuf *rdbuf() const
返回值
指向流关联的 strstreambuf 对象的指针。
备注
此成员函数将 pointer 类型的已存储流缓冲区的地址返回到 strstreambuf。
示例
ostrstream::str
调用 freeze,然后将返回指向受控序列开头的指针。
char *str();
返回值
指向受控序列的开头的指针。