std::ranges::cartesian_product_view<First, Vs...>::iterator<Const>::iterator
来自 zh.cppreference.net
/*iterator*/() = default;
|
(1) | (自 C++23 起) |
constexpr /*iterator*/( /*iterator*/<!Const> i )
requires Const && (
std::convertible_to<ranges::iterator_t<First>, ranges::iterator_t<const First>>
&& ... &&
std::convertible_to<ranges::iterator_t<Vs>, ranges::iterator_t<const Vs>>
);
|
(2) | (自 C++23 起) |
private:
constexpr /*iterator*/(
/*Parent*/& parent,
std::tuple<ranges::iterator_t</*maybe-const*/<Const, First>>,
ranges::iterator_t</*maybe-const*/<Const, Vs>>...> current );
|
(3) | (仅用于说明*) |
构造迭代器。
2) 从
/*iterator*/<false> 到 /*iterator*/<true> 的转换。将 parent_ 初始化为 i.parent_,并将 current_ 初始化为 std::move(i.current_)。3) 一个私有构造函数,由 cartesian_product_view::begin 和 cartesian_product_view::end 使用。此构造函数用户不可访问。
将
parent_ 初始化为 std::addressof(parent),并将 current_ 初始化为 std::move(current)。参数
| i | - | 一个 /*iterator*/ < false > |
示例
|
本节内容不完整
原因:缺少示例 |