std::ranges::cartesian_product_view<First, Vs...>::iterator
来自 cppreference.cn
< 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> 由 const 限定的重载返回。类型 /*iterator*/<false> 由非 const 限定的重载返回。
目录 |
[编辑] 成员类型
成员 | 定义 |
Parent (私有) |
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_ (私有) |
指向父对象 cartesian_product_view 的指针。(仅用于阐释的成员对象*) |
current_ (私有) |
类型为 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 类模板