std::ranges::view_interface<D>::front
constexpr decltype(auto) front()
requires ranges::forward_range<D>;
|
(1) | (depuis C++20) |
constexpr decltype(auto) front() const
requires ranges::forward_range<const D>;
|
(2) | (depuis C++20) |
L'implémentation par défaut de la fonction membre front() retourne le premier élément de la vue du type dérivé. Le fait que l'élément soit retourné par valeur ou par référence dépend du operator* du type d'itérateur.
Équivalent à return *ranges::begin(derived);, où derived est :
static_cast<D&>(*this)static_cast<const D&>(*this)
|
Si |
(jusqu'à C++26) |
|
Si
|
(depuis C++26) |
Valeur de retour
Le premier élément dans la vue.
Notes
En C++20, aucun type dérivé de
std::ranges::view_interface
dans la bibliothèque standard ne fournit sa propre fonction membre
front()
. Presque tous ces types utilisent l'implémentation par défaut.
Une exception notable est
std::ranges::basic_istream_view
. Car il ne satisfait jamais
forward_range
, la vue ne peut pas utiliser la fonction
front()
héritée.
La fonction membre héritée
front()
est disponible pour
std::ranges::empty_view
, mais un appel à celle-ci entraîne toujours un comportement indéfini.
Exemple
|
Cette section est incomplète
Raison : aucun exemple |
Voir aussi
|
(C++11)
(C++14)
|
retourne un itérateur vers le début d'un conteneur ou d'un tableau
(modèle de fonction) |
|
(C++20)
|
retourne un itérateur vers le début d'une plage
(objet point de personnalisation) |
|
(C++20)
|
retourne un itérateur vers le début d'une plage en lecture seule
(objet point de personnalisation) |