命名空间
变体
操作

std::ranges::elements_view<V,N>::迭代器

来自 cppreference.com
 
 
范围库
范围适配器
 
 
template< bool Const >
class /*迭代器*/;
(仅供说明*)

elements_view::begin 的返回值类型,以及当基础视图为 common_rangeelements_view::end 的返回值类型。

类型 /*迭代器*/<true> 由 const 限定的重载返回。类型 /*迭代器*/<false> 由非 const 限定的重载返回。

内容

[编辑] 成员类型

成员类型 定义
Base (private) const V 如果 Consttrue,否则为 V
(仅供说明的成员类型*)
迭代器概念 表示
迭代器类别
(有条件地存在)
未定义,如果 Base 不模仿 forward_range。否则,
value_type std::remove_cvref_t<std::tuple_element_t<N, ranges::range_value_t<Base>>>
difference_type ranges::range_difference_t<Base>

[编辑] 数据成员

成员对象 定义
current_ (private) 一个类型为 ranges::iterator_t<Base> 的迭代器,指向基础序列的当前元素。
(仅供说明的成员对象*)

[编辑] 成员函数

构造一个迭代器
(公共成员函数)
返回底层迭代器
(公共成员函数)
访问第 N 个元组元素
(公共成员函数)
通过索引访问元素
(公共成员函数)
前进或后退底层迭代器
(公共成员函数) [编辑]

[编辑] 非成员函数

比较底层迭代器
(函数)
执行迭代器算术运算
(函数)

[编辑] 缺陷报告

以下行为更改缺陷报告已追溯应用于先前发布的 C++ 标准。

DR 应用于 已发布的行为 正确行为
P2259R1 C++20 成员 iterator_category 始终定义 仅在 Base 模型 forward_range 时定义
LWG 3555 C++20 iterator_concept 的定义忽略 const 使其考虑

[编辑] 另请参见

(C++20)
ranges::transform_view::begin 的返回值类型,以及当底层视图为 common_rangeranges::transform_view::end 的返回值类型
(私有成员类模板) [编辑]