std::strstreambuf

来自cppreference.com
< cpp‎ | io

定义于头文件 <strstream>
class strstreambuf : public std::basic_streambuf<char>
(弃用)
std::strstreambuf是一个std::basic_streambuf,其相应的字符序列是一个字符数组,这可能是常数(如:字符串文本),modifyable,但不是动态的(如堆栈分配的数组),或动态,在这种情况下,std::strstreambuf可能被允许重新分配将数组作为必要的,以适应输出(例如,通过调用delete[]new[]或用户提供的功能).
原文:
std::strstreambuf is a std::basic_streambuf whose associated character sequence is a character array, which may be constant (e.g. a string literal), modifyable but not dynamic (e.g. a stack-allocated array), or dynamic, in which case the std::strstreambuf may be allowed to reallocate the array as necessary to accomodate output (e.g. by calling delete[] and new[] or user-provided functions).
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
std::strstreambuf一个典型的实现包含了四个私有数据成员
原文:
Typical implementation of a std::strstreambuf holds four private data members:
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
1)
缓冲器的状态,一个位掩码,它可以表示任意组合的四个值“分配”(析构函数将释放),(输出)“常数”,“动态”(输出可能会重新分配),或“冻结”(输出,释放重新分配是不允许的)
原文:
buffer state, a bitmask type which can represent any combination of the four values "allocated" (destructor will deallocate), "constant" (output not allowed), "dynamic" (output may reallocate), or "frozen" (output, deallocation, reallocation are not allowed)
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
2)
分配的缓冲区大小
原文:
allocated buffer size
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
3)
指针指向用户提供的配置功能
原文:
pointer to user-provided allocation function
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
4)
指针指向用户提供的释放函数.
原文:
pointer to user-provided deallocation function.
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

目录

[编辑] 注释

str()任何调用,调用freeze(false)后,必须允许strstreambuf析构函数释放缓冲区时.
原文:
After any call to str(), a call to freeze(false) is required to allow the strstreambuf destructor to deallocate the buffer when necessary.
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

[编辑] 成员函数

公共成员函数
原文:
Public member functions
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

构建了一个strstreambuf的对象
原文:
constructs a strstreambuf object
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

(公开成员函数)
解构一个strstreambuf的对象,可以选择重新分配的字符数组
原文:
destructs a strstreambuf object, optionally deallocating the character array
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

(虚公开成员函数)
设置/清除缓冲区的冷冻状态
原文:
sets/clears the frozen state of the buffer
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

(公开成员函数)
马克冻结的缓冲,并传回在输入序列中的开始指针
原文:
marks the buffer frozen and returns the beginning pointer of the input sequence
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

(公开成员函数)
返回下一个指针减去输出序列中的开始指针:写入的字符数
原文:
returns the next pointer minus the beginning pointer in the output sequence: the number of characters written
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

(公开成员函数)

受保护的成员函数
原文:
Protected member functions
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

没有推进的下一个指针来读取一个字符输入序列
原文:
reads a character from the input sequence without advancing the next pointer
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

(虚受保护成员函数)
放回到输入序列中的一个字符
原文:
puts back a character into the input sequence
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

(虚受保护成员函数)
添加一个字符的输出序列,可以重新分配或初始分配的缓冲区,如果动态的,而不是冻结
原文:
appends a character to the output sequence, may reallocate or initially allocate the buffer if dynamic and not frozen
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

(虚受保护成员函数)
[虚]
尝试以取代控制字符序列与一个数组
原文:
attempts to replace the controlled character sequence with an array
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

(虚受保护成员函数)
重新定位在输入序列中的下一个指针,输出序列,或两者,使用相对寻址
原文:
repositions the next pointer in the input sequence, output sequence, or both, using relative addressing
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

(虚受保护成员函数)
重新定位在输入序列中的下一个指针,输出序列,或两者都使用绝对寻址
原文:
repositions the next pointer in the input sequence, output sequence, or both using absolute addressing
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

(虚受保护成员函数)

继承自 std::basic_streambuf

成员类型

成员类型 定义
char_type CharT[编辑]
traits_type Traits[编辑]
int_type Traits::int_type[编辑]
pos_type Traits::pos_type[编辑]
off_type Traits::off_type[编辑]

成员函数

析构 basic_streambuf 对象
(std::basic_streambuf 的虚公开成员函数) [编辑]
本地环境
调用 imbue()
(std::basic_streambuf 的公开成员函数) [编辑]
获得相关本地环境的副本
(std::basic_streambuf 的公开成员函数) [编辑]
寻位
调用 setbuf()
(std::basic_streambuf 的公开成员函数) [编辑]
调用 seekoff()
(std::basic_streambuf 的公开成员函数) [编辑]
调用 seekpos()
(std::basic_streambuf 的公开成员函数) [编辑]
调用 sync()
(std::basic_streambuf 的公开成员函数) [编辑]
获取区
获得获取区中立即可用的字符数
(std::basic_streambuf 的公开成员函数) [编辑]
令输入序列前进,读取一个字符而不再次前进
(std::basic_streambuf 的公开成员函数) [编辑]
从输入序列读取一个字符并令序列前进
(std::basic_streambuf 的公开成员函数) [编辑]
stossc
(弃用) (C++17 前)
令输入序列前进,如同以调用 sbumpc() ,并舍弃结果
(公开成员函数) [编辑]
从输入序列读取一个字符,而不令序列前进
(std::basic_streambuf 的公开成员函数) [编辑]
调用 xsgetn()
(std::basic_streambuf 的公开成员函数) [编辑]
放置区
写一个字符到放置区域,并令 next 指针前进
(std::basic_streambuf 的公开成员函数) [编辑]
调用 xsputn()
(std::basic_streambuf 的公开成员函数) [编辑]
回放
在输入序列中放回一个字符
(std::basic_streambuf 的公开成员函数) [编辑]
回移一位输出序列中的下一位置指针
(std::basic_streambuf 的公开成员函数) [编辑]

受保护成员函数

构造 basic_streambuf 对象
(受保护成员函数) [编辑]
(C++11)
替换 basic_streambuf 对象
(受保护成员函数) [编辑]
(C++11)
交换二个 basic_streambuf 对象
(受保护成员函数) [编辑]
本地环境
[虚]
更改关联的本地环境
(std::basic_streambuf 的虚受保护成员函数) [编辑]
寻位
[虚]
若容许则以用户定义数组替换缓冲区
(std::basic_streambuf 的虚受保护成员函数) [编辑]
用相对寻址重定位输入序列、输出序列或两者中的下一位置指针
(std::basic_streambuf 的虚受保护成员函数) [编辑]
用绝对寻址重定位输入序列、输出序列或两者中的下一位置指针
(std::basic_streambuf 的虚受保护成员函数) [编辑]
[虚]
将缓冲与关联的字符序列同步
(std::basic_streambuf 的虚受保护成员函数) [编辑]
获取区
若已知,则获得关联输入序列中可用于输入的字符数
(std::basic_streambuf 的虚受保护成员函数) [编辑]
从关联输入序列读取字符到获取区
(std::basic_streambuf 的虚受保护成员函数) [编辑]
[虚]
从输入序列读取字符到获取区,并令下一位置指针前进
(std::basic_streambuf 的虚受保护成员函数) [编辑]
[虚]
从输入序列读取多个字符
(std::basic_streambuf 的虚受保护成员函数) [编辑]
返回指向获取区起始、当前字符和末尾的指针
(受保护成员函数) [编辑]
令输出序列中的下一位置指针前进
(受保护成员函数) [编辑]
重定位输出序列的起始、下一位置和终止指针
(受保护成员函数) [编辑]
放置区
[虚]
写多个字符到输出序列
(std::basic_streambuf 的虚受保护成员函数) [编辑]
从放置区写入字符到关联的输出序列
(std::basic_streambuf 的虚受保护成员函数) [编辑]
返回指向放置区的起始、当前字符和末尾的指针
(受保护成员函数) [编辑]
令输出序列中的下一位置指针前进
(受保护成员函数) [编辑]
重定位输出序列的起始、下一位置和终止指针
(受保护成员函数) [编辑]
回放
将字符放回输入序列,可能修改输入序列
(std::basic_streambuf 的虚受保护成员函数) [编辑]