std::ranges::chunk_view<V>::end
Von cppreference.com
< cpp | ranges | chunk view
V modelliert nur input_range |
||
| constexpr std::default_sentinel_t end() const noexcept; |
(1) | (seit C++23) |
V modelliert forward_range |
||
| constexpr auto end() requires (!__simple_view<V>); |
(2) | (seit C++23) |
| constexpr auto end() const requires ranges::forward_range<const V>; |
(3) | (seit C++23) |
Gibt einen Iterator oder ein std::default_sentinel zurück, der dem Enditerator der chunk_view gleicht.
2,3) Verfügbar, wenn V
forward_range modelliert. Sei base_ die zugrundeliegende adaptierte Ansicht, n_ die gespeicherte Chunk-Größe und iterator die verschachtelte Iterator-Klasse.2) Äquivalent zu
if constexpr (ranges::common_range<V> && ranges::sized_range<V>) { auto missing = (n_ - ranges::distance(base_) % n_) % n_; return iterator<false>(this, ranges::end(base_), missing); } else if constexpr (ranges::common_range<V> && !ranges::bidirectional_range<V>) return iterator<false>(this, ranges::end(base_)); else return std::default_sentinel;
3) Äquivalent zu
if constexpr (ranges::common_range<const V> && ranges::sized_range<const V>) { auto missing = (n_ - ranges::distance(base_) % n_) % n_; return iterator<true>(this, ranges::end(base_), missing); } else if constexpr (ranges::common_range<const V> && !ranges::bidirectional_range<const V>) return iterator<true>(this, ranges::end(base_)); else return std::default_sentinel;
[bearbeiten] Rückgabewert
Ein Iterator oder Sentinel, der das Ende der chunk_view repräsentiert, wie oben beschrieben.
[bearbeiten] Beispiel
| Dieser Abschnitt ist unvollständig Grund: kein Beispiel |
[bearbeiten] Siehe auch
| gibt einen Iterator zum Anfang zurück (öffentliche Member-Funktion) | |
| (C++20) |
gibt ein Sentinel zurück, das das Ende eines Ranges anzeigt (Customization Point Objekt) |