• Class / Function / Type

      std::
    • Header file

      <>
    • Other / All

    最終更新日時(UTC):
    が更新

    履歴 編集

    function
    <iterator>

    std::istream_iterator::operator++

    istream_iterator<T, CharT, Traits, Distance>& operator++();
    istream_iterator<T, CharT, Traits, Distance> operator++(int);
    

    概要

    イテレータを進める。 入力ストリームからoperator>>でデータを読み取る。

    効果

    前置operator++*in_stream >> value; return *this;

    後置operator++istream_iterator<T, CharT, Traits, Distance> tmp = *this; *in_stream >> value; return tmp;

    in_streamは、メンバ変数として保持している入力ストリームオブジェクトへのポインタ

    #include <iostream>
    #include <iterator>
    #include <sstream>
    
    int main()
    {
      std::stringstream ss;
      ss << 1 << std::endl
         << 2 << std::endl
         << 3;
    
      std::istream_iterator<int> it(ss);
      std::istream_iterator<int> last;
    
      for (; it != last; ++it) {
        int result = *it;
        std::cout << result << std::endl;
      }
    }
    

    出力

    1
    2
    3
    

    参照