сегда можно вывести новые элем

Автор admin Суббота, 6 июня 2009 11:32

сегда можно вывести новые элементы. Однако поток ввода рано или поздно завершается (например, при достижении конца файла), и это состояние нужно как-то представить. У объектов i st re a m_i te га t о г имеются два конструктора: Классификация итераторов 347 первый получает istream и создает итератор, через который можно читать данные, а второй (конструктор по умолчанию) создает объект конечного итератора. В следующей программе этот объект называется end: //: C07:StreamIt.cpp // Итераторы потоков ввода и вывода #i nclude #include |include #i nclude linclude linclude “../require.h” using namespace std; int mainO { ifstream inC’Streamlt.cpp”): assure(in. “Streamlt.cpp”); istream_iterator begin(in). end; ostream_iterator out(cout. “\n”): vector vs; copy(begin. end. back_inserter(vs)): copy(vs.beginO. vs.endO. out): *out++ = vs[0]; *out++ = “That’s all. folks!”: } ///:- Когда в потоке in кончаются входные данные (в данном случае — при достижении конца файла), копирование завершается. Так как итератор out относится к классу output_itera


Комментарии закрыты.