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 の式が Windowsistr () を呼び出す確認し、*thisを返します。2 番目と 3 番目の関数は、他のマニピュレーターが、[16 進]など、同様にするようになります。残りの関数は、書式指定された入力関数を構成します。
:関数
basic_istream& operator>>(
basic_streambuf<Elem, Tr> *_Strbuf);
_Strbuf が null ポインターである、を展開し _Strbufの要素を挿入します。ファイルの終端の抽出が停止します。また、対象要素を配置せずに挿入がキャッチされた例外を再スローされます (ない) 失敗した場合、またはスロー停止します。関数に要素を配置しない場合 setstate (failbit) を呼び出します。いずれの場合も、関数は *thisを返します。
:関数
basic_istream& operator>>(bool& _Val);
フィールドを展開し、Boolean 値に use_facet <num_get<Elem、InIt> を呼び出すことによって変換されます (getloc)。取得します。 (InIt ( rdbufInit)、(0)、*this、getloc、_Val)。ここでは、InIt は istreambuf_iterator<Elem、Tr> として定義されます。関数は *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、InIt> を呼び出して、フィールドを変換し、() getloc。取得します。 (InIt ( rdbufInit)、(0)、*this、getloc、_Val)。ここでは、InIt は 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、InIt> を呼び出して、フィールドを変換し、() getloc。get (InIt ( rdbufInit)、(0)、*this、getloc、_Val)。ここでは、InIt は istreambuf_iterator<Elem、Tr>、および _Val に必要に応じて型 double 場合があるため long 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
10
10
16
必要条件
ヘッダー: <istream>
名前空間: std