istreambuf_iterator::equal
2 入力ストリームのバッファーの反復子との等価性のテスト。
bool equal(
const istreambuf_iterator<CharType, Traits>& _Right
) const;
パラメーター
- _Right
等価性を確認する反復子。
戻り値
istreambuf_iterator両方とも、ストリームが終端の反復子であるか、または、ストリームが終端の反復子であるtrue ; それ false。
解説
スコープは、現在位置とそのストリームの反復子への istreambuf_iterator によって定義されますが、ストリームの非終端の反復子はすべて、[等しい] のメンバー関数の下で同じであるため、istreambuf_iterator、. を使用して subranges を定義することはできません。== と != 演算子と同じセマンティクスがあります。
使用例
// istreambuf_iterator_equal.cpp
// compile with: /EHsc
#include <iterator>
#include <iostream>
int main( )
{
using namespace std;
cout << "(Try the example: 'Hello world!'\n"
<< " then an Enter key to insert into the output,\n"
<< " & use a ctrl-Z Enter key combination to exit): ";
istreambuf_iterator<char> charReadIn1 ( cin );
istreambuf_iterator<char> charReadIn2 ( cin );
bool b1 = charReadIn1.equal ( charReadIn2 );
if (b1)
cout << "The iterators are equal." << endl;
else
cout << "The iterators are not equal." << endl;
}
Hello World!
Hello World! を実行します (例:「Hello World!」を入力して Enter キーを押下して出力に挿入し、& ctrl-Z Enter キーの組み合わせで終了します) : Hello World!反復子は同等です。
必要条件
ヘッダー: <iterator>
名前空間: std