std::ranges::chunk_view<V>::outer-iterator::value_type
< cpp | ranges | chunk view | outer iterator
在标头
<ranges> 定义 |
||
struct value_type : view_interface<value_type>
|
(C++23 起) | |
迭代器 chunk_view::outer-iterator
的值类型,当 V
实现 input_range
时成立。
数据成员
成员对象 | 定义 |
parent_ (私有) |
指向类型为 ranges::chunk_view* 的“父对象”的指针 (仅用于阐述的成员对象*) |
成员函数
(C++23)
|
构造 value_type (公开成员函数) |
(C++23)
|
返回起始的chunk_view::inner-iterator (公开成员函数) |
(C++23)
|
返回默认哨位 (公开成员函数) |
(C++23)
|
返回视图大小 (公开成员函数) |
继承自 std::ranges::view_interface |
|
返回视图是否为空。仅当视图满足 forward_range 时提供。( std::ranges::view_interface<D> 的公开成员函数) |
|
(C++23)
|
返回指向范围起始的常量迭代器。 ( std::ranges::view_interface<D> 的公开成员函数) |
(C++23)
|
返回对应于范围常量迭代器的哨位。 ( std::ranges::view_interface<D> 的公开成员函数) |
返回派生视图是否为非空。仅当 ranges::empty 可应用于它时提供。 ( std::ranges::view_interface<D> 的公开成员函数) |
std::ranges::chunk_view::outer-iterator::value_type::value_type
private:
// 仅用于阐释 |
(C++23 起) | |
构造 value_type
对象,以便 parent_
以 std::addressof(parent) 初始化。
参数
parent | - | chunk_view 对象 |
std::ranges::chunk_view::outer-iterator::value_type::begin
constexpr /*inner-iterator*/ begin() const noexcept;
|
(C++23 起) | |
等价于 return /*inner-iterator*/(*parent_);。
std::ranges::chunk_view::outer-iterator::value_type::end
constexpr std::default_sentinel_t end() const noexcept;
|
(C++23 起) | |
等价于 return std::default_sentinel;。
std::ranges::chunk_view::outer-iterator::value_type::size
constexpr auto size() const
requires std::sized_sentinel_for<ranges::sentinel_t<V>, ranges::iterator_t<V>>; |
(C++23 起) | |
返回视图的大小。
等价于
return /*to-unsigned-like*/(
ranges::min(parent_->remainder_, ranges::end(parent_->base_) - *parent_->current_));
示例
本节未完成 原因:example |
引用
- C++23 标准(ISO/IEC 14882:2024):
-
- 26.7.28.4 Class chunk_view::outer-iterator::value_type [range.chunk.outer.value]
参阅
(C++23)
|
当 V 实现 input_range 时,输出(“逐区块的”)迭代器类型(仅用于阐述的 std::ranges::chunk_view<V> 的成员类*) |
(C++23)
|
当 V 实现 input_range 时,内部(“逐元素的”)迭代器类型(仅用于阐述的 std::ranges::chunk_view<V> 的成员类*) |