Namespaces
Variants

std::ranges::take_while_view<V,Pred>::end

Aus de.cppreference.net
 
 
Ranges-Bibliothek
Range-Adaptoren
 
 
constexpr auto end() requires (!/*simple-view*/<V>);
(1) (seit C++20)
constexpr auto end() const requires
    ranges::range<const V> &&
    std::indirect_unary_predicate<const Pred, ranges::iterator_t<const V>>;
(2) (seit C++20)

Gibt einen Sentinel zurück, der das Ende des View repräsentiert.

Sei base_ der zugrundeliegende View.

1) Gibt effektiv /*sentinel*/<false>(ranges::end(base_), std::addressof(pred())) zurück.
2) Gibt effektiv /*sentinel*/<true>(ranges::end(base_), std::addressof(pred())) zurück.

Die Überladung (1) nimmt nicht an der Überladungsauflösung teil, wenn V ein Simple View ist (d.h. wenn V und const V Views mit denselben Iterator- und Sentinel-Typen sind).

Parameter

(keine)

Rückgabewert

Ein Sentinel , der das Ende der Ansicht repräsentiert.

Beispiel

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 3450 C++20 die const Überladung könnte einen Sentinel zurückgeben, der nicht mit dem Iterator vergleichbar ist eingeschränkt

Siehe auch

gibt einen Iterator zum Anfang zurück
(öffentliche Elementfunktion)
(C++20)
vergleicht einen Sentinel mit einem von take_while_view::begin zurückgegebenen Iterator
(Funktion)