Namespaces
Variants

std::ranges::chunk_view<V>::iterator<Const>::iterator

ja.cppreference.net より
 
 
Ranges ライブラリ
範囲アダプタ
 
std::ranges::chunk_view
メンバ関数
input_range 用のクラスinput_ranges
推論ガイド
outer-iterator
outer-iterator::value_type
inner-iterator
 
/*iterator*/() = default;
(1) (since C++23)
constexpr /*iterator*/( /*iterator*/<!Const> i )
    requires
        Const and
        std::convertible_to<ranges::iterator_t<V>, ranges::iterator_t<Base>> and
        std::convertible_to<ranges::sentinel_t<V>, ranges::sentinel_t<Base>>;
(2) (since C++23)
private:
constexpr /*iterator*/( Parent* parent,
                        ranges::iterator_t<Base> current,
                        ranges::range_difference_t<Base> missing = 0 );
(3) (説明専用*)

イテレータを構築する。

1) デフォルトコンストラクタ。 値初期化する 下層の データメンバ:
  • current_ を ranges::iterator_t<Base>(),
  • end_ を ranges::sentinel_t<Base>(),
  • n_ を 0,
  • missing_ を 0.
2) /*iterator*/<false> から /*iterator*/<true> への変換。 初期化する 下層の
  • current_データメンバstd::move(i.current_):
  • end_ を std::move(i.end_),
  • n_ を i.n_,
  • missing_ を i.missing_.
3) ranges::chunk_view::begin と ranges::chunk_view::end で使用されるプライベートコンストラクタ。 このコンストラクタはユーザーがアクセスできない。 初期化する
  • current_ 下層の currentデータメンバ
  • end_: ranges::end(parent->base_) を
  • n_,parent->n_ を
  • missing_,missing を
.

パラメータ

i - an /*iterator*/ < false >
parent - owningする chunk_view へのポインタ
current - 現在のチャンクの先頭を指すイテレータ
missing - 期待されるサイズ( n_ )と現在のチャンクの実際のサイズとの差分

例