Namespaces
Variants

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

From cppreference.net
Ranges library
Range adaptors
std::ranges::chunk_view
Member functions
Classes for input_range s
Deduction guides
outer-iterator
outer-iterator ::value_type
inner-iterator
/*iterator*/ ( ) = default ;
(1) (C++23以降)
constexpr /*iterator*/ ( /*iterator*/ < ! Const > i )

要件:
Const かつ
std:: convertible_to < ranges:: iterator_t < V > , ranges:: iterator_t < Base >> および

std:: convertible_to < ranges:: sentinel_t < V > , ranges:: sentinel_t < Base >> ;
(2) (C++23以降)
private :

constexpr /*iterator*/ ( Parent * parent,
ranges:: iterator_t < Base > current,

ranges:: range_difference_t < Base > missing = 0 ) ;
(3) ( 説明専用* )

イテレータを構築します。

1) デフォルトコンストラクタ。 値初期化 により基盤の データメンバ を初期化する:
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_ )と現在のチャンクの実際のサイズとの差分