std::ranges::transform_view<V,F>::end
constexpr /*sentinel*/<false> end(); | (1) | (since C++20) |
constexpr /*iterator*/<false> end() requires ranges::common_range<V>; | (2) | (since C++20) |
constexpr /*sentinel*/<true> end() const
requires ranges::range<const V> &&
std::regular_invocable<const F&, ranges::range_reference_t<const V>>;
| (3) | (since 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) | (since C++20) |
Возвращает маркер или итератор, представляющий конец transform_view.
Пусть base_ — это базовое представление:
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 это делает.
Пример
См. также
|
(C++20) | возвращает итератор начала (общедоступный член-функция) |
|
(C++20) | возвращает маркер, указывающий на конец диапазона (объект точки кастомизации) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/ranges/transform_view/end