basic_istream::operator>>返回值为类本身
2015-06-16 15:14
281 查看
basic_istream::operator>>
对内容的函数或读取输入流格式的数据。basic_istream& operator>>( basic_istream& (*_Pfn)(basic_istream&) ); basic_istream& operator>>( ios_base& (*_Pfn)(ios_base&) ); basic_istream& operator>>( basic_ios<Elem, Tr>& (*_Pfn)(basic_ios<Elem, Tr>&)) ; basic_istream& operator>>( basic_streambuf<Elem, Tr> *_Strbuf ); basic_istream& operator>>( bool& _Val ); basic_istream& operator>>( short& _Val ); basic_istream& operator>>( unsigned short& _Val ); basic_istream& operator>>( int& _Val ); basic_istream& operator>>( unsigned int& _Val ); basic_istream& operator>>( long& _Val ); basic_istream& operator>>( unsigned long& _Val ); basic_istream& operator>>( long long& _Val ); basic_istream& operator>>( unsigned long long& _Val ); basic_istream& operator>>( void *& _Val ); basic_istream& operator>>( float& _Val ); basic_istream& operator>>( double& _Val ); basic_istream& operator>>( long double& _Val );
参数
_Pfn函数指针。
_Strbuf
类型 stream_buf对象。
_Val
要读取的流。值。
返回值
流 (*this)。
备注
<istream> 标头还定义几个全局提取运算符。有关详细信息,请参阅operator>> (<istream>)。
第一个成员函数可以确保窗体 istr >>ws 的表达式称为
ws(istr),然后 *this返回。 第二个和第三个函数来确保其他操控程序,例如
hex,类似的行为。 剩余的函数的格式配置输入函数。
函数:
basic_istream& operator>>( basic_streambuf<Elem, Tr> *_Strbuf);
在 _Strbuf提取元素,因此,如果_Strbuf 不是空指针,并且插入它们。
在到达文件尾的提取终止。
它还停止,而提取相关的元素粘贴,因此,如果失败或引发捕获,但异常不是异常 ()。
如果函数不提取元素,它调用
setstate(failbit)。 在任何情况下,函数返回
*this。
函数:
basic_istream& operator>>(bool& _Val);
提取字段并转换为布尔值通过调用
use_facet <num_get<Elem,初始>(getloc)。
捕获(初始(
rdbuf),Init(0),*this、getloc,_Val)。
在这里,初始 被定义为Elem,Tr>。istreambuf_iterator<
函数返回 *this。
函数:
basic_istream& operator>>(short& _Val); basic_istream& operator>>(unsigned short& _Val); basic_istream& operator>>(int& _Val); basic_istream& operator>>(unsigned int& _Val); basic_istream& operator>>(long& _Val); basic_istream& operator>>(unsigned long& _Val); basic_istream& operator>>(long long& _Val); basic_istream& operator>>(unsigned long long& _Val); basic_istream& operator>>(void *& _Val);
提取每个字段并将其转换为数值时通过调用 use_facet<num_get<Elem,初始>(getloc)。
捕获(初始(
rdbuf),其中 Init(0),*this、getloc,_Val)。
此处,istreambuf_iterator<,因为Elem,Tr>和
_Val 具有类型 long、unsigned long或
void*。需要,定义了 初始。
如果转换的值不能表示为 _Val类型,将调用函数
setstate(failbit)。 在任何情况下,函数返回
*this。
函数:
basic_istream& operator>>(float& _Val); basic_istream& operator>>(double& _Val); basic_istream& operator>>(long double& _Val);
提取每个字段并将其转换为数值时通过调用 use_facet<num_get<Elem,初始>(getloc)。
get(初始(
rdbuf),其中 Init(0),*this、getloc,_Val)。
此处,istreambuf_iterator<,因为Elem,Tr>和
_Val 都具有 long double 或
double 类型根据需要,定义了 初始。
如果转换的值不能表示为 _Val类型,该函数调用
setstate(failbit)。
在任何情况下,它将返回 *this。
示例
// istream_basic_istream_op_is.cpp // compile with: /EHsc #include <iostream> using namespace std; ios_base& hex2( ios_base& ib ) { ib.unsetf( ios_base::dec ); ib.setf( ios_base::hex ); return ib; } basic_istream<char, char_traits<char> >& somefunc(basic_istream<char, char_traits<char> > &i) { if ( i == cin ) { cerr << "i is cin" << endl; } return i; } int main( ) { int i = 0; cin >> somefunc; cin >> i; cout << i << endl; cin >> hex2; cin >> i; cout << i << endl; }
输入
10 10
示例输出
i is cin
10 1010
16
要求
页眉: <istream>命名空间: std
请参见
参考
basic_istream 类operator>> (<istream>)
iostream 编程
iostreams 约定
相关文章推荐
- Linux内核中Netfilter架构介绍
- tomcat 详解
- linux 命令——28 tar
- Centos 6.6 安装ICE
- 无法将类型为“Shell32.ShellClass”的 COM 对象强制转换为接口类型“Shell32.IShellDispatch 6”
- Linux基础与命令
- Linux流量监控工具 - iftop (最全面的iftop教程)
- shell之条件判断
- [基本实验] 2014-6271 bash
- Mac OS X Yosemite安装Hadoop 2.6记录
- linux 命令——27 chmod
- 一个迷茫的 大学生自学Linux的开始
- linux学习 命令ll后字段的解释(转)
- NX Open 切削层加载
- linux学习 命令ll后字段的解释(转)
- 【Java安全技术探索之路系列:Java可扩展安全架构】之二十二:SASL(三):SASL编程模型.md
- 【Java安全技术探索之路系列:Java可扩展安全架构】之二十一:SASL(二):SASL类和接口.md
- shell 读取某个目录下的所有文件
- linux 字符集更改
- 【Java安全技术探索之路系列:Java可扩展安全架构】之二十:SASL(一):SASL架构介绍.md