Namespaces
Variants

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

From cppreference.net
Ranges library
Range adaptors
constexpr auto begin ( ) requires ( ! /*simple_view*/ < V > ) ;
(1) (seit C++20)
constexpr auto begin ( ) const requires range < const V > ;
(2) (seit C++20)
1) Gibt einen Iterator zum ersten Element des common_view zurück, und zwar:
2) Gleich wie (1) , aber V ist const-qualifiziert.

Inhaltsverzeichnis

Rückgabewert

Ein Iterator zum Anfang der zugrundeliegenden Ansicht.

Beispiel

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

Ausgabe:

1 + 2 + 3 = 6

Fehlerberichte

Die folgenden verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.

DR Angewendet auf Verhalten wie veröffentlicht Korrigiertes Verhalten
LWG 4012 C++20 non-const overload missed simple-view check hinzugefügt

Siehe auch

gibt einen Iterator zum Ende zurück
(öffentliche Elementfunktion)
gibt einen Iterator zum Anfang eines Ranges zurück
(Anpassungspunktobjekt)
gibt einen Sentinel zurück, der das Ende eines Ranges anzeigt
(Anpassungspunktobjekt)