Namespaces
Variants

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

来自 zh.cppreference.net
 
 
范围库
范围适配器
 
 
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 起)

向前或向后移动迭代器。

令 current_ 和 last_ele_ 分别为指向滑动窗口起始和末尾的底层迭代器。

1) 等价于:
current_ = ranges::next(current_);
last_ele_ = ranges::next(last_ele_); // if last_ele_ is present
return *this;
调用前,current_ 和 last_ele_(若存在)必须可自增。
2) 等价于: auto tmp = *this; ++*this; return tmp;
3) 等价于:
current_ = ranges::prev(current_);
last_ele_ = ranges::prev(last_ele_); // if last_ele_ is present
return *this;
调用前,current_ 和 last_ele_(若存在)必须可自减。
4) 等价于: auto tmp = *this; --*this; return tmp;
5) 等价于:
current_ = current_ + n;
last_ele_ = last_ele_ + n; // if last_ele_ is present
return *this;
调用前,表达式 current_ + n 和 last_ele_ + n(若 last_ele_ 存在)必须具有良好定义的行为。
6) 等价于:
current_ = current_ - n;
last_ele_ = last_ele_ - n; // if last_ele_ is present
return *this;
调用前,表达式 current_ - n 和 last_ele_ - n(若 last_ele_ 存在)必须具有良好定义的行为。

参数

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

返回值

1,3,5,6) * this
2,4) 在更改前创建的 * this 副本

示例

参见

执行迭代器算术运算
(函数)