名前空間
変種
操作

operator==,!=(std::istream_iterator<T, CharT, Traits, Dist>)

From cppreference.com
 
 
イテレータライブラリ
イテレータのコンセプト
イテレータのプリミティブ
アルゴリズムのコンセプトとユーティリティ
間接呼び出し可能コンセプト
共通アルゴリズム要件
(C++20)
(C++20)
(C++20)
ユーティリティ
(C++20)
イテレータアダプタ
Rangeアクセス
(C++11)(C++14)
(C++14)(C++14)  
(C++11)(C++14)
(C++14)(C++14)  
(C++17)(C++20)
(C++17)
(C++17)
 
 
ヘッダ <iterator> で定義
template< class T, class CharT, class Traits, class Dist >

bool operator==( const std::istream_iterator<T, CharT, Traits, Dist>& lhs,

                 const std::istream_iterator<T, CharT, Traits, Dist>& rhs );
(1)
template< class T, class CharT, class Traits, class Dist >

bool operator!=( const std::istream_iterator<T, CharT, Traits, Dist>& lhs,

                 const std::istream_iterator<T, CharT, Traits, Dist>& rhs );
(2) (C++20まで)
friend bool operator==( const istream_iterator& i, std::default_sentinel_t );
(3) (C++20以降)

両方の lhsrhs が等しいかどうかをチェックします。2つのストリームイテレータは、両方がストリーム終端イテレータであるか、または両方が同じストリームを参照している場合に等しいとみなされます。

1) lhsrhs等しいかどうかをチェックします。
2) lhsrhs等しくないかどうかをチェックします。
3) lhs がストリーム終端イテレータであるかどうかをチェックします。
この関数は、通常の非修飾または修飾ルックアップからは見えず、`std::istream_iterator<T, CharT, Traits, Dist>` が引数に関連付けられたクラスである場合にのみ、引数依存の名前探索によって見つけることができます。

!= 演算子は operator== から合成される。

(C++20以降)

目次

[編集] パラメータ

lhs, rhs - 比較するストリームイテレータ

[編集] 戻り値

1) true (`lhs` が `rhs` と等しい場合)、それ以外の場合は false
2) true (`lhs` が `rhs` と等しくない場合)、それ以外の場合は false
3) true (`lhs` がストリーム終端イテレータの場合)、それ以外の場合は false

[編集] 例外

実装定義の例外をスローする場合があります。

[編集] 不具合報告

以下の動作変更を伴う欠陥報告が、以前に公開されたC++標準に遡って適用されました。

DR 適用対象 公開された動作 正しい動作
LWG 261 C++98 `operator!=` の説明が欠落していた 追加された
English 日本語 中文(简体) 中文(繁體)