在线文档教程
C++
输入/输出 | Input/output

std::basic_stringbuf

性病:基本[医]弦乐

Defined in header
template< class CharT, class Traits = std::char_traits<CharT>, class Allocator = std::allocator<CharT> > class basic_stringbuf : public std::basic_streambuf<CharT, Traits>

std::basic_stringbufstd::basic_streambuf其关联字符序列是任意字符的内存驻留序列,可以从std::basic_string...

的典型实现std::basic_stringbuf持有类型的对象std::basic_string或等效的可调整大小的序列容器直接作为数据成员,并将其用作受控字符序列%28--数组中的6个指针std::basic_streambuf指向%29,并作为关联字符序列%28指向所有输入操作的字符源和输出%29的目标。

此外,一个典型的实现包含一个类型的数据成员。std::ios_base::openmode若要指示流%28只输入、只输出、输入/输出、端-端等的状态,请执行%29。

if over-allocation strategy is used by overflow(), an additional high-watermark pointer may be stored to track the last initialized character(since C++11)

还为公共字符类型定义了两种专门化:

在标头中定义<sstream>

*。

类型定义

弦基[医]弦乐<char>

wstrabuf基[医]字符串<wchar[医]T>

成员类型

Member typeDefinition
char_typeCharT
traits_typeTraits
int_typeTraits::int_type
pos_typeTraits::pos_type
off_typeTraits::off_type
allocator_typeAllocator (since C++11)

成员函数

公共成员职能

*。

%28构造函数%29构造基本[医]字符串对象%28公共成员函数%29

运算符=%28C++11%29分配一个基本[医]字符串对象%28公共成员函数%29

交换%28C++11%29掉期[医]字符串对象%28公共成员函数%29

%28破坏者%29虚拟破坏基本[医]对象及其包含%28虚拟公共成员函数%29的字符串

Str替换或获取关联字符串%28公共成员函数%29的副本。

受保护成员函数

底流虚拟返回输入序列%28虚拟受保护成员函数%29中可用的下一个字符

背向失败虚拟将一个字符放回输入序列%28虚拟受保护成员函数%29

溢流虚拟将一个字符附加到输出序列%28虚拟受保护成员函数%29

塞布夫虚拟尝试用数组%28虚拟受保护成员函数%29替换受控字符序列

寻的虚拟使用相对寻址%28虚拟受保护成员函数%29将下一个指针重新定位在输入序列、输出序列或两者中

求购虚拟使用绝对寻址%28虚拟受保护成员函数%29在输入序列、输出序列或两者中重新定位下一个指针

非会员职能

std::swap(std::basic_stringbuf) (C++11)specializes the std::swap algorithm (function template)

继承自性病:基本[医]流光

成员类型

Member typeDefinition
char_typeCharT
traits_typeTraits
int_typeTraits::int_type
pos_typeTraits::pos_type
off_typeTraits::off_type

成员函数

(destructor) virtualdestructs the basic_streambuf object (virtual public member function of std::basic_streambuf)

地区

调用imbue%28%29%28公共成员函数的STD::Basic[医]流注%29

getloc获得std::basic的关联locale%28公共成员函数的副本[医]流注%29

定位

调用setbuf%28%29%28公共成员函数std::basic[医]流注%29

可调用查找函数%28%29%28公共成员函数std::basic[医]流注%29

公共信息系统调用eokpos%28%29%28公共成员函数std::basic[医]流注%29

公共同步调用同步%28%29%28的STD:Basic公共成员函数[医]流注%29

获取面积

在[医]获取STD::Basic的GET区域%28公共成员函数中立即可用的字符数[医]流注%29

snextc将推进输入序列,然后读取一个字符,而不需要再前进std::basic的公共成员函数%28。[医]流注%29

从输入序列中读取一个字符,并提升std::basic的序列%28公共成员函数。[医]流注%29

stossc%28不推荐使用%29%28,直到C++17%29将输入序列升级,就像调用sbunpc%28%29和丢弃结果%28公共成员函数%29一样。

sgetc从输入序列中读取一个字符,而不提升std::basic的序列%28公共成员函数。[医]流注%29

sgetn调用std::basic的xsgetn%28%29%28公共成员函数。[医]流注%29

放置面积

溅射将一个字符写入PUT区域,并将std::basic的下一个指针%28公共成员函数向前推进。[医]流注%29

调用xspain%28%29%28公共成员函数std::basic[医]流注%29

倒置

sputbackc在std::basic的输入序列%28公共成员函数中放回一个字符[医]流注%29

sungetc将输入序列中的下一个指针移回std::basic的1%28公共成员函数。[医]流注%29

受保护成员函数

(constructor)constructs a basic_streambuf object (protected member function)
operator= (C++11)replaces a basic_streambuf object (protected member function)
swap (C++11)swaps two basic_streambuf objects (protected member function)

地区

灌输虚拟更改std::basic的关联locale%28虚拟受保护成员函数[医]流注%29

定位

塞布夫虚拟使用用户定义的数组替换缓冲区,如果允许,则使用std::basic的%28虚拟受保护成员函数。[医]流注%29

寻的虚拟使用std::basic的相对寻址%28虚拟保护成员函数在输入序列、输出序列或两者中重新定位下一个指针[医]流注%29

求购虚拟使用std::basic的绝对寻址%28虚拟保护成员函数在输入序列、输出序列或两者中重新定位下一个指针[医]流注%29

同步虚拟同步缓冲区与相关字符序列%28虚拟保护成员函数的STD::Basic[医]流注%29

获取面积

演艺界c虚拟获取关联输入序列中可用的字符数,如果已知为std::basic的%28虚拟受保护成员函数[医]流注%29

底流虚拟将字符从关联的输入序列读取到STD::Basic的GET区域%28虚拟保护成员函数[医]流注%29

流线虚拟将字符从关联的输入序列读取到GET区域,并提升下一个指针%28虚拟保护成员函数std::basic[医]流注%29

xsgetn虚拟从std::basic的输入序列%28虚拟受保护成员函数中读取多个字符[医]流注%29

ebackgptregptr返回指向GET区域%28受保护成员函数%29的起始、当前字符和结束的指针。

在输入序列%28受保护的成员函数%29中的下一个指针

SETG重新定位输入序列%28受保护的成员函数%29的开始、下一步和结束指针。

放置面积

xspon虚拟将多个字符写入std::basic的输出序列%28虚拟受保护成员函数[医]流注%29

溢流虚拟将字符写入std::basic的PUT区域%28虚拟受保护成员函数的关联输出序列[医]流注%29

pbasepptrepptr返回指向PUT区域%28受保护成员函数%29的起始、当前字符和结束的指针。

pbp推进输出序列%28受保护的成员函数%29的下一个指针。

SETP重新定位输出序列%28受保护的成员函数%29的开始、下一步和结束指针。

倒置

背向失败虚拟将一个字符放回输入序列,可能修改std::basic的输入序列%28虚拟受保护成员函数。[医]流注%29

© cppreference.com

在CreativeCommonsAttribution下授权-ShareAlike未移植许可v3.0。

http://en.cppreference.com/w/cpp/io/basic[医]弦乐