std::ranges::slide_view<V>::iterator<Const>::operator++,--,+=,-=

来自cppreference.com
< cpp‎ | ranges‎ | slide view‎ | iterator
 
 
范围库
范围适配器
 
 
constexpr /*iterator*/& operator++();
(1) (C++23 起)
constexpr /*iterator*/ operator++( int );
(2) (C++23 起)
constexpr /*iterator*/& operator--()
    requires ranges::bidirectional_range<Base>;
(3) (C++23 起)
constexpr /*iterator*/ operator--( int )
    requires ranges::bidirectional_range<Base>;
(4) (C++23 起)
constexpr /*iterator*/& operator+=( difference_type n )
    requires ranges::random_access_range<Base>;
(5) (C++23 起)
constexpr /*iterator*/& operator-=( difference_type n )
    requires ranges::random_access_range<Base>;
(6) (C++23 起)

推进或减小迭代器 iterator

current_last_ele_ 为指向滑窗首部与尾部的底层迭代器。

1) 等价于:
current_ = ranges::next(current_);
last_ele_ = ranges::next(last_ele_); // 若 last_ele_ 存在
return *this;
调用前,current_last_ele_(若存在)必须是可自增的。
2) 等价于:auto tmp = *this; ++*this; return tmp;
3) 等价于:
current_ = ranges::prev(current_);
last_ele_ = ranges::prev(last_ele_); // 若 last_ele_ 存在
return *this;
调用前,current_last_ele_(若存在)必须是可自增的。
4) 等价于:auto tmp = *this; --*this; return tmp;
5) 等价于:
current_ = current_ + n;
last_ele_ = last_ele_ + n; // 若 last_ele_ 存在
return *this;
调用前,表达式 current_ + nlast_ele_ + n(如果 last_ele_ 存在)的行为必须良定义。
6) 等价于:
current_ = current_ - n;
last_ele_ = last_ele_ - n; // 若 last_ele_ 存在
return *this;
调用前,表达式 current_ - nlast_ele_ - n(如果 last_ele_ 存在)的行为必须良定义。

参数

n - 相对于当前位置的位移

返回值

1,3,5,6) *this
2,4) *this 被修改前的副本

示例

参阅

进行迭代器算术
(函数)