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

std::basic_stringstream

性病:基本[医]串流

Defined in header
template< class CharT, class Traits = std::char_traits<CharT> > class basic_stringstream;(until C++11)
template< class CharT, class Traits = std::char_traits<CharT>, class Allocator = std::allocator<CharT> > class basic_stringstream;(since C++11)

类模板std::basic_stringstream在内存%28上实现输入/输出操作std::basic_string%29基于流。它实质上包装了一个实现%28的原始字符串设备std::basic_stringbuf%29进入高级接口%28std::basic_iostream29%。到唯一的完整接口std::basic_stringbuf提供成员。

二次

二次

继承图

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

在标头中定义<sstream>

*。

类型定义

串基[医]串流<char>

Wstring流基[医]字符串<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)

成员函数

(constructor)constructs the string stream (public member function)
operator= (C++11)moves the string stream (public member function)
swap (C++11)swaps two string streams (public member function)
rdbufreturns the underlying raw string device object (public member function)

字符串操作

Str获取或设置基础字符串设备对象%28公共成员函数%29的内容。

非会员职能

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

继承自性病:基本[医]iStream

成员函数

格式化输入

*。

>>提取格式化数据%28的STD::Basic的公共成员函数[医]iStream%29

未格式化输入

提取字符%28的STD::Basic公共成员函数[医]iStream%29

PEEK读取下一个字符而不提取它%28的std::basic的公共成员函数。[医]iStream%29

取消提取STD::Basic的字符%28公共成员函数[医]iStream%29

将字符放入std::basic的输入流%28公共成员函数中[医]iStream%29

getline提取字符,直到找到给定字符的std::basic的%28公共成员函数为止。[医]iStream%29

忽略提取和丢弃字符,直到找到给定字符的std::basic的%28公共成员函数[医]iStream%29

读取字符块的摘录%28 STD::Basic的公共成员函数[医]iStream%29

Readome摘录已经可用的字符块%28公共成员函数的std::basic[医]iStream%29

gcount返回上次未格式化输入操作提取的字符数%28公共成员函数std::basic[医]iStream%29

定位

tellg返回std::basic的输入位置指示符%28公共成员函数[医]iStream%29

Sekg设置std::basic的输入位置指示符%28公共成员函数[医]iStream%29

杂类

同步与std::basic的底层存储设备%28公共成员函数同步[医]iStream%29

成员类

sentryimplements basic logic for preparation of the stream for input operations (public member class of std::basic_istream)

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

成员函数

格式化输入

*。

操作符<<插入格式化数据%28公共成员函数的std::basic[医]Ostream%29

未格式化输入

PUT插入STD::Basic的字符%28公共成员函数[医]Ostream%29

写入字符插入块%28公共成员函数的STD::Basic[医]Ostream%29

定位

tellp返回std::basic的输出位置指示符%28公共成员函数[医]Ostream%29

Sekp设置std::basic的输出位置指示符%28公共成员函数[医]Ostream%29

杂类

与底层存储设备%28公共成员函数同步:Basic[医]Ostream%29

成员类

sentryimplements basic logic for preparation of the stream for output operations (public member class of std::basic_ostream)

继承自性病:基本[医]IOS

成员类型

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

成员函数

状态函数

*。

如果没有发生错误,即I/O操作可用的是std::basic的%28公共成员函数。[医]IOS%29

EOF检查文件结束是否已达到std::basic的%28公共成员函数[医]IOS%29

如果发生错误,失败检查fdd::basic的公共成员函数%28[医]IOS%29

错误检查是否发生了不可恢复的错误::basic的公共成员函数%28[医]IOS%29

操作符%21检查错误是否发生了%28同义词失败%28%29%29%28公共成员函数的std::basic[医]IOS%29

操作员空隙%2A操作符bool%28直到C++11%29%28,因为C++11%29检查是否发生了错误%28同义词%21失败%28%29%29%28公共成员函数的std::Basic[医]IOS%29

rdstate返回std::basic的状态标志%28公共成员函数[医]IOS%29

setstate设置std::basic的状态标志%28公共成员函数[医]IOS%29

清除错误和标志的eof标志%28公共成员函数的STD::Basic[医]IOS%29

格式化

复制格式信息%28公共成员函数的STD::Basic[医]IOS%29

Fill管理std::basic的填充字符%28公共成员函数[医]IOS%29

杂类

异常管理STD::Basic的异常掩码%28公共成员函数[医]IOS%29

Imbue设置std::basic的locale%28公共成员函数[医]IOS%29

rdbuf管理std::basic的关联流缓冲区%28公共成员函数[医]IOS%29

TIE管理绑定流%28 STD::Basic的公共成员函数[医]IOS%29

窄缩字符%28公共成员函数的STD::Basic[医]IOS%29

拓宽字符%28公共成员函数的STD::BASIC[医]IOS%29

继承自科技促进发展:监督办[医]底座

成员函数

格式化

*。

标志管理std::IOS的格式标志%28公共成员函数[医]基数%29

SETF设置STD::IOS的特定格式标志%28公共成员函数[医]基数%29

unsetf清除std::IOS的特定格式标志%28公共成员函数[医]基数%29

精度管理浮点操作的十进制精度STD::IOS的公共成员函数%28[医]基数%29

宽度管理STD::IOS的字段宽度%28公共成员函数[医]基数%29

地区

Imbue设置STD::IOS的locale%28公共成员函数[医]基数%29

getloc返回std::IOS的当前locale%28公共成员函数[医]基数%29

内部可扩展数组

xalloc静态返回一个程序范围的唯一整数,该整数可以安全地用作pword%28%29和iword%28%29%28的索引,该索引用于std::IOS的公共静态成员函数。[医]基数%29

iword在必要时调整私有存储空间的大小,并在给定的STD::IOS的索引%28公共成员函数中访问长元素。[医]基数%29

pword在必要时调整私有存储空间的大小,并访问空存储空间。%2A在给定索引%28公共成员函数下的[医]基数%29

杂类

寄存器[医]回调注册事件回调函数%28公共成员函数的std::IOS[医]基数%29

同步[医]带着[医]斯迪奥静态设置C++和CIO库是否可互操作STD::IOS的公共静态成员函数%28[医]基数%29

成员类

错误流异常%28公共成员类STD::IOS[医]基数%29

初始化标准流对象%28公共成员类std::IOS[医]基数%29

成员类型和常量

*。

类型解释

开放模式流开放模式类型还定义了以下常量:常量解释应用程序在每次写入二进制文件之前,在二进制模式下以开放的方式打开,读取,读,写,中继,在打开时丢弃流的内容。在打开%28ty胡枝子%29常量解释应用程序之后的流结束,在每次以二进制模式以开放方式打开二进制之前,在打开以供写入中继之前寻求流的结束。当打开时,溪流在打开后立即寻觅到流的末端。

常量解释

在每次写入之前,应用程序都要到流的末尾。

二进制模式打开

开放阅读

开放写作

当打开时,trunc丢弃流的内容。

在打开后立即寻找到流的尽头。

格式标志类型还定义了以下常量:常量解释使用十进制基表示整数I/O:请参见std::dec八进制用于整数I/O:请参见std::oct十六进制对整数I/O使用十六进制基:请参阅std::十六进制字段dec奥克特六角0.用于掩蔽操作,左调整%28将填充字符添加到右侧%29:请参见std::左右调整%28向左%29添加填充字符:请参阅std::右内部调整%28将填充字符添加到内部指定点%29:参见std::内部调整字段左右内部。用于掩蔽操作使用科学符号生成浮点类型,如果与固定符号结合则使用十六进制符号:请参见std::使用固定符号生成浮点类型,或与科学结合使用十六进制符号:请参见std::固定浮动场科学。固定28%科学固定%290.用于掩蔽操作boolalpha插入和提取字母数字格式的bool类型:参见std::boolalpha显示基生成一个前缀,指示整数输出的数字基。需要货币I/O中的货币指示器:请参阅std::showbase显示点无条件地为浮点数输出生成十进制字符:请参见std::showpoint显示为非负数字输出生成一个+字符:请参阅std::showpos跳过某些输入操作前的空格:请参阅std::skipws在每次输出后刷新输出。操作:请参阅std::unitbuf大写字母,在某些输出输出操作中用大写字母替换其大写字母:请参见std::uppercase%28tydurif%29常量解释--Dec对整数I/O使用十进制基:参阅std::dec---整数I/O使用八进制基:参见std::Oct hex使用十六进制。整数I/O的基数:参见std::十六进制基场奥克特六角0.用于掩蔽操作,左调整%28将填充字符添加到右侧%29:请参见std::左右调整%28向左%29添加填充字符:请参阅std::右内部调整%28将填充字符添加到内部指定点%29:参见std::内部调整字段左右内部。用于掩蔽操作使用科学符号生成浮点类型,如果与固定符号结合则使用十六进制符号:请参见std::使用固定符号生成浮点类型,或与科学结合使用十六进制符号:请参见std::固定浮动场科学。固定28%科学固定%290.用于掩蔽操作boolalpha插入和提取字母数字格式的bool类型:参见std::boolalpha显示基生成一个前缀,指示整数输出的数字基。需要货币I/O中的货币指示器:请参阅std::showbase显示点无条件地为浮点数输出生成十进制字符:请参见std::showpoint显示为非负数字输出生成+字符:请参阅std::showpos跳过某些输入操作前的空格:在每次输出操作后,单位单位刷新输出:参见std::unitbuf大写,在某些输出输出操作中用大写字母替换某些小写字母:参见std::

常量解释

整数I/O使用十进制基数:参见std::dec

整数I/O使用八进制基:参见std::oct

十六进制对整数I/O使用十六进制基:参见std::十六进制

基场DEC奥克特六角0.用于掩蔽操作

左调整%28向右添加填充字符%29:参见std::左侧

向右调整%28将填充字符添加到左侧%29:参见std::右侧

内部调整%28将填充字符添加到内部指定点%29:参见std::

调整域左右内部。用于掩蔽操作

使用科学表示法生成浮点类型,如果与固定符号结合,则生成十六进制表示法:参见std::Science

固定使用固定符号生成浮点类型,如果与科学相结合,则生成十六进制符号:请参见std::fix。

浮场科学固定28%科学固定%290.用于掩蔽操作

字母数字格式的boolalpha插入和提取bool类型:参见std::boolalpha

Displaybase生成一个前缀,表示整数输出的数字基,需要货币I/O中的货币指示符:参见std::showbase

显示点无条件地为浮点数输出生成小数点字符:请参见std::showpoint。

Displaypos为非负数字输出生成一个+字符:参见std::howpos

在某些输入操作之前跳过前导空格:参见std::skipws

在每次输出操作后刷新输出:参见std::unitbuf

在某些输出输出操作中,用大写字母替换某些小写字母:参见std::

流类型的iostate状态也定义了以下常量:常量解释,好位,无错误坏比特,不可恢复的流错误,输入/输出操作失败,28格式或提取错误,29 eofbit相关输入序列已达到文件末尾%28tyduf%29,常量解释好位,无错误位。不可恢复的流错误失败位输入/输出操作失败%28格式或提取错误%29 eofbit相关输入序列已达到文件末尾。

常量解释

好比特没有错误

坏比特不可恢复流错误

失败位输入/输出操作失败%28格式或提取错误%29

eofbit相关联的输入序列已达到文件的末尾。

寻找方向类型还定义了以下常数:常量解释求流结束,流结束,流位置指示符的当前位置,指示符%28,胡枝子%29,常量解释,请求流结束的开头。流的末尾是流位置指示器的当前位置。

常量解释

乞求溪头

结束流的结束

流位指示器的当前位置

事件指定事件类型%28 enum%29。

事件[医]回调函数类型%28

© cppreference.com

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

http://en.cppreference.com/w/cpp/io/basic[医]串流