std::ranges::join_with_view<V,Pattern>:: iterator <Const>:: iterator
|
/*iterator*/
(
)
=
default
;
|
(1) | (seit C++23) |
|
constexpr
/*iterator*/
(
/*iterator*/
<
!
Const
>
i
)
erfordert Const
&&
|
(2) | (seit C++23) |
|
constexpr
/*iterator*/
(
/*Parent*/
&
parent,
/*OuterIter*/
outer
)
erfordert std:: forward_range < /*Base*/ > ; |
(3) |
(seit C++23)
( nur zur Darstellung* ) |
|
constexpr
explicit
/*iterator*/
(
/*Parent*/
parent
)
erfordert ( ! std:: forward_range < /*Base*/ > ) ; |
(4) |
(seit C++23)
( nur zur Darstellung* ) |
Konstruiert einen Iterator. Die Überladungen (3,4) werden von begin() und end() des ranges::join_with_view aufgerufen.
| Überladung | Datenelemente | ||
|---|---|---|---|
parent_
|
outer_it_
|
inner_it_
|
|
| (1) | initialisiert mit nullptr |
wertinitialisiert
(nur falls
Base
das Konzept
forward_range
modelliert)
|
standardinitialisiert |
| (2) |
initialisiert mit
i.
parent_
|
initialisiert mit
std
::
move
(
i.
outer_it_
(nur falls
Base
das Konzept
forward_range
modelliert)
|
|
| (3) |
initialisiert mit
std:: addressof ( parent ) |
initialisiert mit std :: move ( outer ) | |
| (4) | N/A | ||
if
(
i.
inner_it_
.
index
(
)
==
0
)
inner_it_
.
template
emplace
<
0
>
(
std
::
get
<
0
>
(
std
::
move
(
i.
inner_it_
)
)
)
;
else
inner_it_
.
template
emplace
<
1
>
(
std
::
get
<
1
>
(
std
::
move
(
i.
inner_it_
)
)
)
;
operator++()
inkrementiert worden wäre.
Parameter
| i | - | ein veränderlicher Iterator |
| parent | - | ein std::ranges::join_with_view Objekt |
| outer | - | ein Iterator in den zugrundeliegenden Bereich von parent |
Beispiel
|
Dieser Abschnitt ist unvollständig
Grund: Kein Beispiel |