std::ranges::enumerate_view<V>::iterator<Const>::iterator

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



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

范围工厂
适配器
范围生成器
范围适配器对象
范围适配器闭包对象
辅助项
 
 
/*iterator*/()
    requires std::default_initializable<ranges::iterator_t<Base>> = default;
(1) (C++23 起)
constexpr /*iterator*/( /*iterator*/<!Const> i )

    requires Const &&

        std::convertible_to<ranges::iterator_t<V>, ranges::iterator_t<Base>>;
(2) (C++23 起)
private:

// 仅用于阐释
constexpr explicit /*iterator*/( ranges::iterator_t<Base> current,

                                 difference_type pos);
(3) (C++23 起)

构造迭代器。

1) 默认构造函数。 以 ranges::iterator_t<Base>() 值初始化 底层迭代器 current_ 并以 0 初始化底层索引 pos_
2)/*iterator*/<false> 转型为 /*iterator*/<true>。初始化 current_std::move(i.current_)pos_i.pos_
3) 用于 enumerate_view::beginenumerate_view::end 的私有构造函数。此构造函数用户不可访问。初始化 current_std::move(current)pos_pos

参数

i - 一个 /*iterator*/<false>

示例