Il secondo paragrafo é dedicato agli iteratori su stream, usati per lavorare direttamente sugli stream di input e output.
L'iteratore per l'istream istream_iterator
Quando viene costruito e con ogni avanzamento per mezzo dell'operatore ++ l'iteratore legge un elemento di tipo T. Alla fine dello stream l'iteratore diventa uguale all'iteratore end().
Ecco un esempio di lettura da file usando questo iteratore:
#include<fstream>
#include<iostream>
#include<iterator>
#include<string>
using namespace std;
int main() {
ifstream source("d221.cpp");
istream_iterator<string> pos(source);
istream_iterator<string> end;
if(pos == end) {
cout << "File not found!" << endl;
return -1;
}
while(pos != end) {
cout << *pos << endl;
++pos;
}
}
Nessun commento:
Posta un commento