Spec-Zone.ru › C++

std::ranges::adjacent_view<V,N>::end

constexpr auto end() requires (!__SimpleView<V>);
(1) (начиная с C++23)
constexpr auto end() const requires ranges::range<const V>;
(2) (начиная с 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.

Пример

См. также

begin
возвращает итератор на начало
(открытая функция-член)
ranges::end
(C++20)
возвращает сентинел, обозначающий конец диапазона
(объект-точка настройки)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/ranges/adjacent_view/end

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API