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 )

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) (自 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_
  • 使用 ranges:: end ( parent - > base_ ) 初始化 end_
  • 使用 parent - > n_ 初始化 n_
  • 使用 missing 初始化 missing_

参数

i - 一个 /*iterator*/ < false >
parent - 指向所属 chunk_view 的指针
current - 指向当前块起始位置的迭代器
missing - 预期( n_ )与当前块实际大小之间的差值

示例