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

来自cppreference.com
< cpp‎ | ranges‎ | stride view‎ | iterator
 
 
范围库
范围适配器
 
 
/*iterator*/()
    requires std::default_initializable<ranges::iterator_t<Base>> = default;
(1) (C++23 起)
constexpr /*iterator*/( /*iterator*/<!Const> i )

    requires Const and
        std::convertible_to<ranges::iterator_t<V>, ranges::iterator_t<Base>> and

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

constexpr /*iterator*/( /*Parent*/& parent,
                        ranges::iterator_t<Base> current,

                        ranges::range_difference_t<Base> missing = 0 );
(3) (仅用于阐述*)

构造迭代器

1) 默认构造函数。值初始化
2)/*iterator*/<false>/*iterator*/<true> 的转换,
  • current_std::move(i.current_) 初始化,
  • end_std::move(i.end_) 初始化,
  • stride_i.stride_ 初始化,
  • missing_i.missing_ 初始化。
3)stride_view::beginstride_view::end 使用的私有构造函数,此构造函数无法被用户访问。

参数

i - /*iterator*/<false>

示例