std::istream_iterator<T,CharT,Traits,Distance>:: operator++, operator++ (int)
From cppreference.net
<
cpp
|
iterator
|
istream iterator
C++
Iterator library
| Iterator concepts | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Iterator primitives | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Algorithm concepts and utilities | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Indirect callable concepts | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Common algorithm requirements | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Utilities | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Iterator adaptors | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
std::istream_iterator
| Member functions | ||||
|
istream_iterator::operator++
istream_iterator::operator++(int)
|
||||
| Non-member functions | ||||
|
(until C++20)
|
|
istream_iterator
&
operator
++
(
)
;
|
(1) | |
|
istream_iterator operator
++
(
int
)
;
|
(2) | |
Считывает значение из базового потока (используя его operator>> ) и сохраняет его в объект итератора. Если считывание завершается неудачей (метод fail() базового потока возвращает true ), итератор становится итератором конца потока.
Поведение не определено, если итератор является конечным итератором потока.
Содержание |
Параметры
(нет)
Возвращаемое значение
1)
*
this
2)
Итератор
istream_iterator
, который содержит неизменяемое значение.
Исключения
Может выбрасывать исключения, определяемые реализацией.
Отчеты о дефектах
Следующие отчеты об изменениях поведения, влияющие на дефекты, были применены ретроактивно к ранее опубликованным стандартам C++.
| DR | Applied to | Behavior as published | Correct behavior |
|---|---|---|---|
| LWG 260 | C++98 |
return type of
operator
++
(
int
)
was
istream_iterator&
|
corrected to
istream_iterator
|
| LWG 788 | C++98 |
underlying stream's
operator
void
*
was
used to determine whether the read fails, but it was removed by the resolution of LWG issue 468 |
uses fail() instead |
| LWG 838 | C++98 | it was unclear whether end-of-stream iterators can be incremented | the behavior is undefined |