Libreria Iterator C ++ - istream_iterator

Descrizione

È uno speciale iteratore di input che legge gli elementi successivi da un flusso di input.

Dichiarazione

Di seguito è la dichiarazione per std :: istream_iterator.

C ++ 11

template <class T, class charT = char, class traits = char_traits<charT>, 
         class Distance = ptrdiff_t>
   class istream_iterator;

Parametri

  • T - È un tipo di elemento per l'iteratore.

  • charT - È un primo parametro del modello dell'oggetto basic_istream associato.

  • traits - È un secondo parametro del modello del basic_istream associato.

  • Distance - È la differenza tra due iteratori.

Valore di ritorno

nessuna

Eccezioni

Se x in qualche modo genera mentre applica l'operatore unario & ad esso, questa funzione non genera mai eccezioni.

Complessità temporale

costante per iteratori ad accesso casuale.

Esempio

L'esempio seguente mostra l'utilizzo di std :: insert_iterator.

#include <iostream>
#include <iterator>

int main () {
   double value1, value2;
   std::cout << "Please insert values: ";

   std::istream_iterator<double> eos;              
   std::istream_iterator<double> iit (std::cin);   

   if (iit!=eos) value1=*iit;

   ++iit;
   if (iit!=eos) value2=*iit;

   std::cout << value1 << "*" << value2 << "=" << (value1*value2) << '\n';

   return 0;
}

Compiliamo ed eseguiamo il programma sopra, questo produrrà il seguente risultato:

Please insert values: 0*6.95264e-310=0