Namensräume
Varianten
Aktionen

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

Von cppreference.com
< cpp‎ | ranges‎ | common view
 
 
Bereichsbibliothek
Range-Adaptoren
 
 
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 auf das erste Element der common_view zurück, d.h.
2) Dasselbe wie (1), aber V ist const-qualifiziert.

Inhalt

[bearbeiten] Rückgabewert

Ein Iterator zum Anfang der zugrundeliegenden View.

[bearbeiten] 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

[bearbeiten] Defect reports

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

[bearbeiten] Siehe auch

gibt einen Iterator zum Ende zurück
(öffentliche Member-Funktion) [edit]
gibt einen Iterator zum Anfang eines Ranges zurück
(Customization Point Objekt)[edit]
gibt ein Sentinel zurück, das das Ende eines Ranges anzeigt
(Customization Point Objekt)[edit]