std::ranges::enumerate_view<V>::iterator<Const>::operator++,--,+=,-=
来自cppreference.com
< cpp | ranges | enumerate view | iterator
范围库
std::ranges::enumerate_view
成员函数 | ||||
(C++23)
|
||||
(C++23)
|
||||
(C++23)
|
||||
(C++23)
|
||||
(C++23)
|
||||
推导指引 | ||||
嵌套类 | ||||
迭代器 | ||||
(C++23)
|
||||
(C++23)
|
||||
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-= (C++23)(C++23)(C++23)(C++23)(C++23)(C++23)
|
||||
哨位 | ||||
(C++23)
|
||||
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)
|
实行迭代器算术运算 (函数) |