Namespaces
Variants

std::ranges::join_view<V>::begin

Von de.cppreference.net
 
 
Ranges-Bibliothek
Bereichsadapter
 
 
constexpr auto begin();
(1) (seit C++20)
constexpr auto begin() const
    requires ranges::input_range<const V> &&
             std::is_reference_v<ranges::range_reference_t<const V>>;
(2) (seit C++20)

Gibt einen Iterator auf das erste Element des join_view. Gegeben base_ ist die zugrundeliegende Ansicht,

1) Äquivalent zu
  • return /*iterator*/<true>{*this, ranges::begin(base_)}; falls /*simple-view*/<V> erfüllt ist und ranges::range_reference_t<V> ein Referenztyp ist. Andernfalls,
  • return /*iterator*/<false>{*this, ranges::begin(base_)};.
2) Äquivalent zu return /*iterator*/<true>{*this, ranges::begin(base_)};.

Parameter

(keine)

Rückgabewert

Iterator zum ersten Element.

Hinweise

Wenn ranges:: range_reference_t < V > kein Referenztyp ist, das heißt, wenn das Dereferenzieren eines Iterators von V ein prvalue-Temporär zurückgibt, ist die join_view nur ein input_range , in welchem Fall nur Einzel-Durchlauf-Iteration unterstützt wird und wiederholte Aufrufe von begin() möglicherweise keine sinnvollen Ergebnisse liefern.

Beispiel

Siehe auch

gibt einen Iterator oder Sentinel zum Ende zurück
(öffentliche Elementfunktion)
gibt einen Iterator zum Anfang eines Bereichs zurück
(Anpassungspunktobjekt)