std::ranges:: repeat_view<W, Bound>:: iterator
|
struct
/*iterator*/
;
|
( nur zur Darstellung* ) | |
ranges::
repeat_view
<
W, Bound
>
::
iterator
ist der Typ der Iteratoren, die von
begin()
und
end()
des
ranges::
repeat_view
<
W, Bound
>
zurückgegeben werden.
Verschachtelte Typen
Nur zur Darstellung verwendete Typen |
|
| Typ | Definition |
index-type
|
std::
conditional_t
<
std::
same_as
<
Bound,
std::
unreachable_sentinel_t
>
,
std::
ptrdiff_t
, Bound
>
( nur zur Darstellung verwendeter Member-Typ* ) |
Iterator-Eigenschaftstypen |
|
| Typ | Definition |
iterator_concept
|
std::random_access_iterator_tag |
iterator_category
|
std::random_access_iterator_tag |
value_type
|
W
|
difference_type
|
std::
conditional_t
<
is-signed-integer-like
<
index-type
>
,
index-type
,
iota-diff-t
<
index-type
>>
|
Datenmitglieder
| Member | Definition |
const
W
*
value_
|
ein Zeiger auf den zu wiederholenden Wert
( Nur zur Veranschaulichung verwendetes Member-Objekt* ) |
index-type
current_
|
die aktuelle Position
( Nur zur Veranschaulichung verwendetes Member-Objekt* ) |
Memberfunktionen
std::ranges::repeat_view:: iterator :: iterator
|
/*iterator*/
(
)
=
default
;
|
(1) | (seit C++23) |
|
constexpr
explicit
/*iterator*/
( const W * value, /*index-type*/ b = /*index-type*/ ( ) ) ; |
(2) |
(seit C++23)
( nur zur Darstellung* ) |
Konstruiert einen Iterator. Überladung
(2)
wird von
begin()
und
end()
von
ranges::repeat_view
aufgerufen.
std::ranges::repeat_view:: iterator :: operator*
|
constexpr
const
W
&
operator
*
(
)
const
noexcept
;
|
(seit C++23) | |
Gibt
*
value_
zurück.
std::ranges::repeat_view:: iterator :: operator[]
|
constexpr
const
W
&
operator
[
]
(
difference_type n
)
const
noexcept
;
|
(seit C++23) | |
Gibt * ( * this + n ) zurück.
std::ranges::repeat_view:: iterator :: operator++
|
constexpr
/*iterator*/
&
operator
++
(
)
;
|
(1) | (since C++23) |
|
constexpr
void
operator
++
(
int
)
;
|
(2) | (since C++23) |
current_
;
return
*
this
;
.
std::ranges::repeat_view:: iterator :: operator--
|
constexpr
/*iterator*/
&
operator
--
(
)
;
|
(1) | (since C++23) |
|
constexpr
/*iterator*/
operator
--
(
int
)
;
|
(2) | (since C++23) |
current_
;
return
*
this
;
.
Bound
nicht
std::unreachable_sentinel_t
ist und
current_
nicht positiv ist, ist das Verhalten undefiniert.
std::ranges::repeat_view:: iterator :: operator+=
|
constexpr
/*iterator*/
&
operator
+
=
(
difference_type n
)
;
|
(seit C++23) | |
Entspricht
current_
+
=
n
;
return
*
this
;
.
Falls
Bound
nicht
std::unreachable_sentinel_t
ist und
current_
+
n
negativ ist, ist das Verhalten undefiniert.
std::ranges::repeat_view:: iterator :: operator-=
|
constexpr
/*iterator*/
&
operator
-
=
(
difference_type n
)
;
|
(seit C++23) | |
Entspricht
current_
-
=
n
;
return
*
this
;
.
Falls
Bound
nicht
std::unreachable_sentinel_t
ist und
current_
-
n
negativ ist, ist das Verhalten undefiniert.
Nicht-Member-Funktionen
operator==, <=> (std::ranges::repeat_view:: iterator )
|
friend
constexpr
bool
operator
==
( const /*iterator*/ & x, const /*iterator*/ & y ) ; |
(1) | (seit C++23) |
|
friend
constexpr
auto
operator
<=>
( const /*iterator*/ & x, const /*iterator*/ & y ) ; |
(2) | (seit C++23) |
Der
!=
-Operator wird
synthetisiert
aus
operator==
.
Diese Funktionen sind für gewöhnliche
unqualifizierte
oder
qualifizierte Suche
nicht sichtbar und können nur durch
argumentabhängige Suche
gefunden werden, wenn
iterator
eine assoziierte Klasse der Argumente ist.
operator+ (std::ranges::repeat_view:: iterator )
|
friend
constexpr
/*iterator*/
operator
+
( /*iterator*/ i, difference_type n ) ; |
(1) | (seit C++23) |
|
friend
constexpr
/*iterator*/
operator
+
( difference_type n, /*iterator*/ i ) ; |
(2) | (seit C++23) |
Entspricht i + = n ; return i ; .
Diese Funktionen sind für gewöhnliches
unqualified
oder
qualified lookup
nicht sichtbar und können nur durch
argument-dependent lookup
gefunden werden, wenn
iterator
eine assoziierte Klasse der Argumente ist.
operator- (std::ranges::repeat_view:: iterator )
|
friend
constexpr
/*iterator*/
operator
-
( /*iterator*/ i, difference_type n ) ; |
(1) | (seit C++23) |
|
friend
constexpr
difference_type operator
-
( const /*iterator*/ & x, const /*iterator*/ & y ) ; |
(2) | (seit C++23) |
difference_type
>
(
x.
current_
)
-
static_cast
<
difference_type
>
(
y.
current_
)
.
Diese Funktionen sind für gewöhnliche
unqualifizierte
oder
qualifizierte Suche
nicht sichtbar und können nur durch
argumentabhängige Suche
gefunden werden, wenn
iterator
eine assoziierte Klasse der Argumente ist.
Hinweise
iterator
ist immer
random_access_iterator
.