Namespaces
Variants

std::ranges::common_view<V>:: begin

From cppreference.net
Ranges library
Range adaptors
constexpr auto begin ( ) requires ( ! /*simple_view*/ < V > ) ;
(1) (depuis C++20)
constexpr auto begin ( ) const requires range < const V > ;
(2) (depuis C++20)
1) Renvoie un itérateur vers le premier élément de la common_view , c'est-à-dire :
2) Identique à (1) , mais V est qualifié const.

Table des matières

Valeur de retour

Un itérateur vers le début de la vue sous-jacente.

Exemple

#include <iostream>
#include <numeric>
#include <ranges>
#include <string_view>
int main()
{
    constexpr auto common = std::views::iota(1)
                          | std::views::take(3)
                          | std::views::common
                          ;
    for (int i{}; int e : common)
        std::cout << (i++ ? " + " : "") << e;
    std::cout << " = " << std::accumulate(common.begin(), common.end(), 0) << '\n';
}

Sortie :

1 + 2 + 3 = 6

Rapports de défauts

Les rapports de défauts modifiant le comportement suivants ont été appliqués rétroactivement aux normes C++ précédemment publiées.

DR Appliqué à Comportement publié Comportement corrigé
LWG 4012 C++20 non-const overload missed simple-view check ajouté

Voir aussi

retourne un itérateur vers la fin
(fonction membre publique)
retourne un itérateur vers le début d'une plage
(objet de point de personnalisation)
retourne un sentinelle indiquant la fin d'une plage
(objet de point de personnalisation)