std::ranges::view_interface<D>:: front
|
||||||||||||||||||||||
| Range primitives | |||||||
|
|||||||
| Range concepts | |||||||||||||||||||
|
|||||||||||||||||||
| Range factories | |||||||||
|
|||||||||
| Range adaptors | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||
| Helper items | |||||||||||||||||
|
|
||||||||||||||||
| Member functions | ||||
|
(C++23)
|
||||
|
(C++23)
|
||||
|
front
|
||||
|
constexpr
decltype
(
auto
)
front
(
)
requires ranges:: forward_range < D > ; |
(1) | (seit C++20) |
|
constexpr
decltype
(
auto
)
front
(
)
const
requires ranges:: forward_range < const D > ; |
(2) | (seit C++20) |
Die Standardimplementierung der
front()
Memberfunktion gibt das erste Element in der Ansicht des abgeleiteten Typs zurück. Ob das Element als Wert oder als Referenz zurückgegeben wird, hängt vom
operator
*
des Iteratortyps ab.
derived
gleich
static_cast
<
D
&
>
(
*
this
)
. Entspricht
return
*
ranges::
begin
(
derived
)
;
. Das Verhalten ist undefiniert, wenn
empty()
gleich
true
ist (d.h. der Anfang-Iterator gleich dem Sentinel ist), selbst wenn der auf gleiche Weise erhaltene Iterator dereferenzierbar ist.
derived
static_cast
<
const
D
&
>
(
*
this
)
ist.
Inhaltsverzeichnis |
Rückgabewert
Das erste Element in der Ansicht.
Hinweise
In C++20 stellt kein von
std::ranges::view_interface
abgeleiteter Typ in der Standardbibliothek seine eigene
front()
Memberfunktion bereit. Fast alle diese Typen verwenden die Standardimplementierung.
Eine bemerkenswerte Ausnahme ist
std::ranges::basic_istream_view
. Da es niemals
forward_range
erfüllt, kann die View die geerbte
front()
-Funktion nicht verwenden.
Die geerbte
front()
Memberfunktion ist für
std::ranges::empty_view
verfügbar, jedoch führt ein Aufruf davon stets zu undefiniertem Verhalten.
Beispiel
|
Dieser Abschnitt ist unvollständig
Grund: Kein Beispiel |
Siehe auch
|
(C++11)
(C++14)
|
gibt einen Iterator zum Anfang eines Containers oder Arrays zurück
(Funktions-Template) |
|
(C++20)
|
gibt einen Iterator zum Anfang eines Ranges zurück
(Customization Point Object) |
|
(C++20)
|
gibt einen Iterator zum Anfang eines schreibgeschützten Ranges zurück
(Customization Point Object) |