std::ranges::common_view<V>::begin
De cppreference.com
<tbody>
</tbody>
constexpr auto begin(); |
(1) | (desde C++20) |
constexpr auto begin() const requires range<const V>; |
(2) | (desde C++20) |
1) Devuelve un iterador al primer elemento de la vista
common_view, es decir:
ranges::begin(base_), si tantoranges::random_access_range<V>comoranges::sized_range<V>se satisfacen,std::common_iterator<ranges::iterator_t<V>, ranges::sentinel_t<V>>(ranges::begin(base_))de lo contrario.
base_ (el nombre es para efectos solo de exposición) es la vista subyacente.2) Igual que (1), pero
V está calificada const.Parámetros
(Ninguno)
Valor de retorno
Un iterador al comienzo de la vista subyacente.
Ejemplo
Ejecuta este código
#include <iostream>
#include <numeric>
#include <ranges>
#include <string_view>
int main()
{
constexpr auto comun = std::views::iota(1)
| std::views::take(3)
| std::views::common
;
for (int i{}; int e : comun) { std::cout << (i++ ? " + " : "") << e; }
std::cout << " = " << std::accumulate(comun.begin(), comun.end(), 0) << '\n';
}
Salida:
1 + 2 + 3 = 6
Véase también
(C++20) |
Devuelve un iterador al final. (función miembro pública) |
(C++20) |
Devuelve un iterador al principio de un rango. (objeto punto de personalización) |
(C++20) |
Devuelve un iterador al final de un rango (objeto punto de personalización) |