strstream 类
描述了一个对象,该对象使用 strstreambuf 类的流缓冲区控制元素和编码对象的插入和提取。
语法
class strstream : public iostream
备注
该对象存储 strstreambuf
类的对象。
注意
此类已弃用。 请考虑改用 stringstream 或 wstringstream。
构造函数
构造函数 | 说明 |
---|---|
strstream | 构造 strstream 类型的对象。 |
成员函数
成员函数 | 说明 |
---|---|
freeze | 导致无法通过流缓冲区操作使用流缓冲区。 |
pcount | 返回写入到受控序列的元素计数。 |
rdbuf | 返回指向流的关联 strstreambuf 对象的指针。 |
str | 调用 freeze,然后将返回指向受控序列开头的指针。 |
要求
标头:<strstream>
命名空间: std
strstream::freeze
导致无法通过流缓冲区操作使用流缓冲区。
void freeze(bool _Freezeit = true);
参数
_Freezeit
bool
指示是否要冻结流。
备注
此成员函数调用 rdbuf ->freeze(_ Freezeit)。
示例
有关使用 freeze
的示例,请参阅 strstreambuf::freeze。
strstream::pcount
返回写入到受控序列的元素计数。
streamsize pcount() const;
返回值
写入到受控序列的元素数。
备注
示例
有关使用 pcount 的示例,请参阅 strstreambuf::pcount。
strstream::rdbuf
返回指向流关联的 strstreambuf 对象的指针。
strstreambuf *rdbuf() const
返回值
指向流关联的 strstreambuf 对象的指针。
注解
此成员函数将 pointer
类型的已存储流缓冲区的地址返回到 strstreambuf。
示例
有关使用 rdbuf
的示例,请参阅 strstreambuf::pcount。
strstream::str
调用 freeze,然后将返回指向受控序列开头的指针。
char *str();
返回值
指向受控序列的开头的指针。
备注
示例
有关使用 str
的示例,请参阅 strstreambuf::str。
strstream::strstream
构造 strstream
类型的对象。
strstream();
strstream(char* ptr,
streamsize count,
ios_base::openmode _Mode = ios_base::in | ios_base::out);
参数
count
缓冲区的大小。
_Mode
缓冲区的输入和输出模式。 有关详细信息,请参阅 ios_base::openmode。
ptr
缓冲区。
注解
这两个构造函数均可通过调用 streambuf( 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
) )。