Namespaces
Variants

operator+,-(ranges::adjacent_view::iterator)

ja.cppreference.net より
 
 
範囲ライブラリ
範囲アダプタ
 
 
friend constexpr /*iterator*/ operator+( const /*iterator*/& i,
                                         difference_type n )
    requires ranges::random_access_range<Base>;
(1) (C++23 以降)
friend constexpr /*iterator*/ operator+( difference_type n,
                                         const /*iterator*/& i )
    requires ranges::random_access_range<Base>;
(2) (C++23 以降)
friend constexpr /*iterator*/ operator-( const /*iterator*/& i,
                                         difference_type n )
    requires ranges::random_access_range<Base>;
(3) (C++23 以降)
friend constexpr difference_type operator-( const /*iterator*/& i,
                                            const /*iterator*/& j )
    requires std::sized_sentinel_for<ranges::iterator_t<Base>,
                                     ranges::iterator_t<Base>>;
(4) (C++23 以降)

current_ をイテレータの内部配列とし、Base を内部となるビューの型(const修飾される可能性がある)とする。

1,2) i を n だけインクリメントしたイテレータを返す。 以下と同等: auto r = i; r += n; return r;.
3) i を n だけデクリメントしたイテレータを返す。 以下と同等: auto r = i; r -= n; return r;.
4) i と j の距離を返す。 以下と同等: return i.current_.back() - j.current_.back();.

これらの関数は通常の非修飾または修飾名前探索では見えず、引数依存の名前探索によってのみ、adjacent_view::iterator<Const>が引数の関連クラスである場合に発見される。

パラメータ

i, j - イテレータ
n - 現在位置からの相対位置

戻り値

1,2) インクリメントされたイテレータ。
3) デクリメントされたイテレータ。
4) 指定されたイテレータ間の距離。

例

関連項目

基となるイテレータを進めるまたは戻す
(公開メンバ関数)