std::ranges::enumerate_view<V>:: iterator <Const>:: operator++,--,+=,-=
From cppreference.net
<
cpp
|
ranges
|
enumerate view
|
iterator
C++
Ranges library
|
||||||||||||||||||||||
| Range primitives | |||||||
|
|||||||
| Range concepts | |||||||||||||||||||
|
|||||||||||||||||||
| Range factories | |||||||||
|
|||||||||
| Range adaptors | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||
| Helper items | |||||||||||||||||
|
|
||||||||||||||||
std::ranges::enumerate_view
| Member functions | ||||
|
(C++26)
|
||||
| Deduction guides | ||||
| Nested classes | ||||
| Iterator | ||||
|
enumerate_view::
iterator
::operator++
enumerate_view:: iterator ::operator++ (int) enumerate_view:: iterator ::operator-- enumerate_view:: iterator ::operator-- (int) enumerate_view:: iterator ::operator+= enumerate_view:: iterator ::operator-= |
||||
| Sentinel | ||||
|
constexpr
/*iterator*/
&
operator
++
(
)
;
|
(1) | (начиная с C++23) |
|
constexpr
void
operator
++
(
int
)
;
|
(2) | (начиная с C++23) |
|
constexpr
/*iterator*/
operator
++
(
int
)
requires ranges:: forward_range < Base > ; |
(3) | (начиная с C++23) |
|
constexpr
/*iterator*/
&
operator
--
(
)
requires ranges:: bidirectional_range < Base > ; |
(4) | (начиная с C++23) |
|
constexpr
/*iterator*/
operator
--
(
int
)
requires ranges:: bidirectional_range < Base > ; |
(5) | (начиная с C++23) |
|
constexpr
/*iterator*/
&
operator
+
=
(
difference_type n
)
requires ranges:: random_access_range < Base > ; |
(6) | (начиная с C++23) |
|
constexpr
/*iterator*/
&
operator
-
=
(
difference_type n
)
requires ranges:: random_access_range < Base > ; |
(7) | (начиная с C++23) |
Увеличивает или уменьшает итератор .
Пусть
current_
будет базовым итератором, а
pos_
будет базовым индексом.
1)
Эквивалентно
++
current_
;
++
pos_
;
return
*
this
;
2)
Эквивалентно
++
current_
;
3)
Эквивалентно
auto
tmp
=
*
this
;
++*
this
;
return
tmp
;
4)
Эквивалентно
--
current_
;
--
pos_
;
return
*
this
;
5)
Эквивалентно
auto
tmp
=
*
this
;
--*
this
;
return
tmp
;
6)
Эквивалентно
current_
+
=
n
;
pos_
+
=
n
;
return
*
this
;
7)
Эквивалентно
current_
-
=
n
;
pos_
-
=
n
;
return
*
this
;
Параметры
| n | - | позиция относительно текущего местоположения |
Возвращаемое значение
1,4,6,7)
*
this
2)
(нет)
3,5)
копия
*
this
, созданная до изменения
Смотрите также
|
(C++23)
|
выполняет арифметические операции с итераторами
(функция) |