std::ranges::cartesian_product_view<First, Vs...>:: iterator
From cppreference.net
<
cpp
|
ranges
|
cartesian product view
|
template
<
bool
Const
>
class /*iterator*/ |
(自 C++23 起)
( 仅用于说明* ) |
|
cartesian_product_view::begin
的返回类型,以及当底层视图
V
为
common_range
时
cartesian_product_view::end
的返回类型。
类型 /*iterator*/ < true > 由常量限定重载返回。类型 /*iterator*/ < false > 由非常量限定重载返回。
目录 |
成员类型
| 成员 | 定义 |
Parent
(private)
|
maybe-const
<
Const,
ranges::
cartesian_product_view
>>
( 仅用于说明的成员类型* ) |
iterator_category
|
std:: input_iterator_tag |
iterator_concept
|
|
value_type
|
std::
tuple
<
ranges::
range_value_t
<
/*maybe-const*/
<
Const, First
>>
,
ranges:: range_value_t < /*maybe-const*/ < Const, Vs >> ... > ; |
reference
|
std::
tuple
<
ranges::
range_reference_t
<
/*maybe-const*/
<
Const, First
>>
,
ranges:: range_reference_t < /*maybe-const*/ < Const, Vs >> ... > ; |
difference_type
|
一个实现定义的 有符号整数类型 (可能是此类类型中最小的),其宽度足以存储所有底层范围最大尺寸的乘积(如果存在这样的类型)。 |
数据成员
| 成员 | 定义 |
Parent*
parent_
(private)
|
指向父对象
cartesian_product_view
的指针
( 仅用于说明的成员对象* ) |
current_
(private)
|
由指向当前底层元素的迭代器组成的元组,类型为
std::
tuple
<
ranges::
iterator_t
<
/*maybe-const*/
<
Const, First
>>
,
ranges:: iterator_t < /*maybe-const*/ < Const, Vs >> ... > ( 仅用于说明的成员对象* ) |
成员函数
|
构造迭代器
(公开成员函数) |
|
|
访问元素
(公开成员函数) |
|
|
通过索引访问元素
(公开成员函数) |
|
|
前进或回退底层迭代器
(公开成员函数) |
|
|
前进迭代器
( 仅用于说明的成员函数* ) |
|
|
回退迭代器
( 仅用于说明的成员函数* ) |
|
|
返回两个迭代器之间的距离
( 仅用于说明的成员函数* ) |
非成员函数
|
(C++23)
|
比较底层迭代器
(函数) |
|
(C++23)
|
执行迭代器算术运算
(函数) |
|
(C++23)
|
将底层迭代器解引用结果转换为其关联的右值引用类型
(函数) |
|
(C++23)
|
交换底层指向的元素
(函数) |
示例
|
本节内容不完整
原因:缺少示例 |
参考文献
- C++23 标准 (ISO/IEC 14882:2024):
-
-
26.7.32.3 类模板
cartesian_product_view::iterator[range.cartesian.iterator]
-
26.7.32.3 类模板