std::ranges::view_interface

来自cppreference.com
< cpp‎ | ranges
 
 
范围库
视图
view_interface
  

范围适配器
 
std::ranges::view_interface
 
在标头 <ranges> 定义
template< class D >

    requires std::is_class_v<D> && std::same_as<D, std::remove_cv_t<D>>

class view_interface;
(C++20 起)

std::ranges::view_interface 是用于定义视图接口的辅助类模板。

view_interface 常以 CRTP 使用:

class my_view : public std::ranges::view_interface<my_view>
{
public:
    auto begin() const { /*...*/ }
    auto end() const { /*...*/ }
    // 若 begin() 返回向前迭代器且 end() 返回其哨位则提供 empty()。
};

目录

[编辑] 成员函数