std::ranges::drop_while_view<V,Pred>::begin

来自cppreference.com
 
 
范围库
范围访问
范围转换器
(C++23)
范围原语



悬垂迭代器处理
范围概念
视图

范围工厂
适配器
范围生成器
范围适配器对象
范围适配器闭包对象
辅助项
 
 
constexpr auto begin();
(C++20 起)

返回指向视图首元素的迭代器。

等效于返回 ranges::find_if_not(base_, std::cref(pred())) ,其中 base_ 为底层视图。若 *this 不存储谓词则行为未定义。

为提供 range 概念所要求的均摊常数时间复杂度,此函数在 drop_while_view 对象内缓存结果以供后继使用。

参数

(无)

返回值

指向视图首元素的迭代器。

示例

#include <array>
#include <iostream>
#include <ranges>
 
int main()
{
    constexpr std::array data{ 0, -1, -2, 3, 1, 4, 1, 5 };
 
    auto view = std::ranges::drop_while_view{
        data, [](int x) { return x <= 0; }
    };
 
    std::cout << *view.begin() << '\n';
}

输出:

3

参阅

(C++20)
返回指向末尾的迭代器或哨位
(公开成员函数)