std::ranges::chunk_view<V>::iterator<Const>::iterator
来自cppreference.com
<tbody>
</tbody>
/*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) 默认构造函数,值初始化底层数据成员:
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 | - | /*iterator*/<false>
|
| parent | - | 指向所持有的 chunk_view 的指针
|
| current | - | 指向当前块首部的迭代器 |
| missing | - | 当前块的预期大小(n_)与实际大小的差值
|
示例
| 本节未完成 原因:暂无示例 |