Spec-Zone.ru › C++

std::ranges::adjacent_transform_view<V,F,N>::end

constexpr auto end();
(1) (since C++23)
constexpr auto end() const
    requires ranges::range<const InnerView> &&
        std::regular_invocable<const F&,
            __REPEAT(ranges::range_reference_t<const V>, N)...>;
(2) (since C++23)

Возвращает итератор или конечную точку, представляющие конец итератора или конечной точки adjacent_transform_view.

Пусть inner_ является базовым ranges::adjacent_view.

1) Эквивалентно:
if constexpr (ranges::common_range<InnerView>)
    return /*iterator*/<false>(*this, inner_.end());
else
    return /*sentinel*/<false>(inner_.end());
2) Эквивалентно:
if constexpr (ranges::common_range<const InnerView>)
    return /*iterator*/<true>(*this, inner_.end());
else
    return /*sentinel*/<true>(inner_.end());

Параметры

(нет)

Значение возврата

Итератор на элемент, следующий за последним элементом, если базовая последовательность V реализует common_range. В противном случае, конечная точка, которая сравнивается с конечным итератором.

Примечания

adjacent_transform_view<V,F,N> реализует common_range всякий раз, когда базовая последовательность V делает.

Пример

См. также

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

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

Spec-Zone.ru

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