std::ranges::cartesian_product_view<First, Vs...>::iterator<Const>::iterator
ja.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 | - | an /*iterator*/ < false > |
例
|
このセクションは不完全です
理由: 例がありません |