Namespaces
Variants

std::ranges::join_view<V>:: iterator

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

join_view::begin 的返回类型,以及当外层范围 V 和内层范围 ranges:: range_reference_t < V > 同时满足 common_range 且父级 join_view forward_range 时的 join_view::end 返回类型。

如果 V 不是 简单视图 (例如当 ranges:: iterator_t < const V > 无效或不同于 ranges:: iterator_t < V > 时),对于常量重载返回的迭代器 Const 为 true,否则为 false。如果 V 是简单视图,则当且仅当 ranges:: range_reference_t < V > 为引用类型时 Const 为 true。

目录

成员类型

成员 定义
Parent maybe-const  < Const, ranges:: join_view < V >>
( 仅用于说明的成员类型* )
Base maybe-const  < Const, V >
( 仅用于说明的成员类型* )
OuterIter ranges:: iterator_t < Base >
( 仅用于说明的成员类型* )
InnerIter ranges:: iterator_t < ranges:: range_reference_t < Base >>
( 仅用于说明的成员类型* )
iterator_concept
iterator_category
(条件性存在)
仅当 iterator::iterator_concept (见上文)表示 std::forward_iterator_tag 时定义。

OUTERC std:: iterator_traits < ranges:: iterator_t < Base >> :: iterator_category ,且令 INNERC std:: iterator_traits < ranges:: iterator_t < ranges:: range_reference_t < Base >>> ::
iterator_category

value_type ranges:: range_value_t < ranges:: range_reference_t < Base >>
difference_type std:: common_type_t < ranges:: range_difference_t < Base > ,
ranges:: range_difference_t < ranges:: range_reference_t < Base >>>

数据成员

成员 定义
OuterIter outer_ (private) 外层迭代器
( 仅用于说明的成员对象* )
InnerIter inner_ (private) 内层迭代器
( 仅用于说明的成员对象* )
Parent* parent_ (private) 指向父对象的指针
( 仅用于说明的成员对象* )

成员函数

构造迭代器
(公开成员函数)
访问元素
(公开成员函数)
前进或回退底层迭代器
(公开成员函数)
跳过空的内层范围
( 仅用于说明的成员函数* )

非成员函数

(C++20)
比较底层迭代器
(函数)
(C++20)
将底层迭代器解引用结果转换为其关联的右值引用类型
(函数)
(C++20)
交换两个底层迭代器所指向的对象
(函数)