Namespaces
Variants

operator+,-(ranges::stride_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*/& x, const /*iterator*/& y )
        requires std::sized_sentinel_for<ranges::iterator_t<Base>,
                                         ranges::iterator_t<Base>>;
(4) (C++23以上)
friend constexpr difference_type
    operator-( std::default_sentinel_t, const /*iterator*/& x )
        requires std::sized_sentinel_for<ranges::sentinel_t<Base>,
                                         ranges::iterator_t<Base>>;
(5) (C++23以上)
friend constexpr difference_type
    operator-( const /*iterator*/& x, std::default_sentinel_t s )
        requires std::sized_sentinel_for<ranges::sentinel_t<Base>,
                                         ranges::iterator_t<Base>>;
(6) (C++23以上)

イテレータをインクリメントまたはデクリメントします。

current_、end_、stride_、missing_をイテレータのデータメンバとします。

1,2)以下と同等: auto r = i; r += n; return r;.
3)以下と同等: auto r = i; r -= n; return r;.
4)Nを x.current_ - y.current_とします。以下を返します:
  • (N + x.missing_ - y.missing_) / x.stride_、ただし Baseが forward_rangeをモデル化する場合。
  • -/*div-ceil*/(-N, x.stride_)、ただし N < 0の場合。
  • /*div-ceil*/(N, x.stride_)それ以外の場合。
5)以下と同等: return /*div-ceil*/(x.end_ - x.current_, x.stride_);.
6)以下と同等: return -(s - x);.

これらの関数は、通常の名前修飾なしまたは名前修飾ありの名前探索では可視ではなく、引数依存の名前探索によってのみ見つけることができます。ただし、stride_view::iterator<Const>が引数の関連クラスである場合に限ります。

パラメータ

x, y, i - the iterators
s - a sentinel

戻り値

1,2) インクリメントされたイテレータ
3) デクリメントされたイテレータ
4) 指定されたイテレータ間の距離
5,6) 指定されたイテレータとセンチネル間の距離

例

関連項目

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