std::ranges::slide_view<V>::iterator<Const>::operator++,--,+=,-=
ja.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以上) |
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
のコピー
例
|
このセクションは不完全です
理由: 例がありません |
関連項目
|
(C++23)
|
イテレータ演算を実行する
(関数) |