std::ranges::adjacent_view<V,N>::end
constexpr auto end() requires (!__SimpleView<V>); | (1) | (since C++23) |
constexpr auto end() const requires ranges::range<const V>; | (2) | (since C++23) |
Возвращает итератор или конечную точку, представляющую конец итератора или конечной точки adjacent_view.
Пусть base_ будет базовым представлением.
1) Эквивалентно:
if constexpr (ranges::common_range<V>)
return /*iterator*/<false>(__as_sentinel{}, ranges::begin(base_), ranges::end(base_));
else
return /*sentinel*/<false>(ranges::end(base_));
2) Эквивалентно:
if constexpr (ranges::common_range<const V>)
return /*iterator*/<true>(__as_sentinel{}, ranges::begin(base_), ranges::end(base_));
else
return /*sentinel*/<true>(ranges::end(base_));Параметры
(нет)
Возвращаемое значение
Итератор на элемент, следующий за последним элементом, если базовая структура V моделирует common_range. В противном случае — конечная точка, равная конечному итератору.
Примечания
ranges::adjacent_view<V,N> моделирует common_range всякий раз, когда базовая структура V это делает.
Пример
См. также
|
(C++23) | возвращает итератор к началу (публичный член-функция) |
|
(C++20) | возвращает конечную точку, указывающую на конец диапазона (объект точки настройки) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/ranges/adjacent_view/end