Namespaces
Variants

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

From cppreference.net
Ranges library
Range adaptors
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_); // 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 のコピー

関連項目

イテレータ演算を実行する
(関数)