std::ranges::take_while_view<V,Pred>::begin
constexpr auto begin() requires (!/*simple-view*/<V>); | (1) | (с C++20) |
constexpr auto begin() const requires
ranges::range<const V> &&
std::indirect_unary_predicate<const Pred, ranges::iterator_t<const V>>;
| (2) | (с C++20) |
Возвращает итератор на первый элемент представления. Фактически вызывает ranges::begin для базового представления base_.
Перегрузка (1) не участвует в разрешении перегрузки, если V является простым представлением (то есть если V и constV являются представлениями с одинаковыми типами итератора и сентинела).
Параметры
(нет)
Возвращаемое значение
ranges::begin(base_), где base_ является базовым представлением.
Пример
Отчёты об ошибках
Следующие отчёты об ошибках, изменяющие поведение, были применены ретроактивно к ранее опубликованным стандартам C++.
| DR | Применяется к | Поведение в опубликованной версии | Корректное поведение |
|---|---|---|---|
| LWG 3450 | C++20 | перегрузка с const могла возвращать итератор, который нельзя сравнить с сентинелом | ограничена |
См. также
| возвращает сентинел, представляющий конец (открытая функция-член) |
|
|
(C++20) | сравнивает сентинел с итератором, возвращённым take_while_view::begin (функция) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/ranges/take_while_view/begin