Spec-Zone.ru › C++

std::ranges::transform_view<V,F>::end

constexpr /*sentinel*/<false> end();
(1) (начиная с C++20)
constexpr /*iterator*/<false> end() requires ranges::common_range<V>;
(2) (начиная с C++20)
constexpr /*sentinel*/<true> end() const
    requires ranges::range<const V> &&
             std::regular_invocable<const F&, ranges::range_reference_t<const V>>;
(3) (начиная с C++20)
constexpr /*iterator*/<true> end() const
    requires ranges::common_range<const V> &&
             std::regular_invocable<const F&, ranges::range_reference_t<const V>>;
(4) (начиная с C++20)

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

Эквивалентно:

1) return sentinel<false>{ranges::end(base_);.
2) return iterator<false>{*this,ranges::end(base_)};.
3) return sentinel<true>{ranges::end(base_)};.
4) return iterator<true>{*this,ranges::end(base_)};.

Параметры

(нет)

Возвращаемое значение

1,3) сентинел, сравниваемый на равенство с конечным итератором
2,4) итератор на элемент, следующий за последним элементом

Примечания

end() возвращает итератор тогда и только тогда, когда базовое представление является common_range: transform_view<V,F> моделирует 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/transform_view/end

Spec-Zone.ru

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