Namespaces
Variants

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

From cppreference.net
Ranges library
Range adaptors
constexpr auto begin ( ) requires ( ! /*simple_view*/ < V > ) ;
(1) (desde C++20)
constexpr auto begin ( ) const requires range < const V > ;
(2) (desde C++20)
1) Devuelve un iterador al primer elemento del common_view , es decir:
2) Igual que (1) , pero V está calificado como const.

Contenidos

Valor de retorno

Un iterador al inicio de la vista subyacente.

Ejemplo

#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';
}

Salida:

1 + 2 + 3 = 6

Informes de defectos

Los siguientes informes de defectos que modifican el comportamiento se aplicaron retroactivamente a los estándares de C++ publicados anteriormente.

DR Applied to Behavior as published Correct behavior
LWG 4012 C++20 la sobrecarga no constante omitió la verificación simple-view añadida

Véase también

devuelve un iterador al final
(función miembro pública)
devuelve un iterador al inicio de un rango
(objeto de punto de personalización)
devuelve un centinela que indica el final de un rango
(objeto de punto de personalización)