名前空間
変種
操作

std::istream_iterator<T,CharT,Traits,Distance>::operator++, operator++(int)

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)
 
 
istream_iterator& operator++();
(1)
istream_iterator operator++( int );
(2)

基になるストリームから値を読み込み(そのoperator>>を使用)、イテレータオブジェクトに格納します。読み込みが失敗した場合(基になるストリームのfail()trueを返した場合)、イテレータはストリーム終了イテレータになります。

イテレータがストリーム終端イテレータの場合、未定義の動作となります。

目次

[編集] パラメータ

(なし)

[編集] 戻り値

1) *this
2) 変更されていない値を保持するistream_iterator

[編集] 例外

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

[編集] 不具合報告

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

DR 適用対象 公開された動作 正しい動作
LWG 260 C++98 operator++(int) の戻り値の型がistream_iterator&でした istream_iteratorに修正されました
LWG 788 C++98 基になるストリームのoperator void*
読み込みが失敗したかどうかを判断するために使用されていましたが、これは
LWG issue 468の解決によって削除されました
代わりにfail()を使用します
LWG 838 C++98 ストリーム終了イテレータをインクリメントできるかどうかは不明でした 未定義の動作
English 日本語 中文(简体) 中文(繁體)