名前空間
変種
操作

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

From cppreference.com
< cpp‎ | ranges‎ | stride view‎ | iterator
 
 
Rangesライブラリ
Rangeアダプタ
 
 
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) Nx.current_ - y.current_ とします。返り値は以下の通りです。
  • (N + x.missing_ - y.missing_) / x.stride_Baseforward_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 - イテレータ
s - センチネル

[編集] 返り値

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

[編集]

[編集] 関連項目

基底イテレータを進めたり、後退させたりします。
(public member function) [編集]
English 日本語 中文(简体) 中文(繁體)