istream_iterator::istream_iterator

构造结束流迭代器,原因是默认 istream_iteratoristream_iterator 初始化为它读取的迭代器的流类型。

istream_iterator( ); 
istream_iterator(
   istream_type& _Istr
);

参数

  • _Istr
    是的输入流读取的用于初始化 istream_iterator

备注

第一个构造函数初始化空指针的输入流指针并创建关闭流迭代器。 第二个构造函数初始化。&_Istr的输入流指针,然后尝试提取和存储类型 ***** 类型 *****对象。

关闭流迭代器可使用测试 istream_iterator 是否已到达了流的末尾。

示例

// istream_iterator_istream_iterator.cpp
// compile with: /EHsc
#include <iterator>
#include <vector>
#include <algorithm>
#include <iostream>

int main( )
{
   using namespace std;

   // Used in conjunction with copy algorithm
   // to put elements into a vector read from cin
   vector<int> vec ( 4 );
   vector <int>::iterator Iter;

   cout << "Enter 4 integers separated by spaces & then\n"
        << " a character ( try example: '2 4 6 8 a' ): ";
   istream_iterator<int> intvecRead ( cin );

   // Default constructor will test equal to end of stream
   // for delimiting source range of vecor
   copy ( intvecRead , istream_iterator<int>( ) , vec.begin ( ) );
   cin.clear ( );

   cout << "vec = ";
   for ( Iter = vec.begin( ) ; Iter != vec.end( ) ; Iter++ )
      cout << *Iter << " "; cout << endl;
}
  2 4 6 8。

FakePre-cc0bda41721b48b1adae15ce45e8bcdf-a323d093dd614165b8416a6ad51ab7a6

要求

标头: <iterator>

命名空间: std

请参见

参考

istream_iterator Class

标准模板库