Namespaces
Variants

std::ranges::elements_view<V,N>:: iterator

From cppreference.net
Ranges library
Range adaptors
template < bool Const >
class /*iterator*/ ;
( 仅用于说明* )

elements_view::begin 的返回类型,以及当底层视图为 common_range elements_view::end 的返回类型。

类型 /*iterator*/ < true > 由常量限定重载返回。类型 /*iterator*/ < false > 由非常量限定重载返回。

目录

成员类型

成员类型 定义
Base (private) Const true 则为 const V ,否则为 V
( 仅用于说明的成员类型* )
iterator_concept 表示:
iterator_category
(条件性存在)
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 th 个元组元素
(公开成员函数)
通过索引访问元素
(公开成员函数)
前进或回退底层迭代器
(公开成员函数)

非成员函数

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

缺陷报告

下列行为变更缺陷报告被追溯应用于先前发布的 C++ 标准。

缺陷报告 应用于 发布时的行为 正确行为
P2259R1 C++20 成员 iterator_category 始终被定义 仅当 Base 满足 forward_range 概念时定义
LWG 3555 C++20 iterator_concept 的定义忽略 const 限定 修改为考虑 const 限定

参见

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