Namespaces
Variants

std::ranges::adjacent_transform_view<V,F,N>::iterator

来自 zh.cppreference.net
 
 
范围库
范围适配器
 
 
template< bool Const >
class /*iterator*/
(自 C++23 起)
(仅用于说明*)

返回类型 adjacent_transform_view::begin,以及 adjacent_transform_view::end 当底层视图 V 是一个 common_range。

类型 /*iterator*/<true> 由 const 限定重载返回。类型 /*iterator*/<false> 由非 const 限定重载返回。

成员类型

类型 定义
Parent (私有) maybe-const <Const, ranges::adjacent_transform_view>
(仅用于阐述的成员类型*)
Base (私有) maybe-const <Const, V>
(仅用于阐述的成员类型*)
iterator_category
  • std::input_iterator_tag,如果
std::invoke_result_t</*maybe-const*/<Const, F>&,
                     /*REPEAT*/(ranges::range_reference_t<Base>, N)...>
不是引用。否则,
  • 让C表示类型std::iterator_traits<iterator_t<Base>>::iterator_category。
    • std::random_access_iterator_tag,如果
      std::derived_from<C, std::random_access_iterator_tag> 是 true。否则,
    • std::bidirectional_iterator_tag,如果
      std::derived_from<C, std::bidirectional_iterator_tag> 是 true。否则,
    • std::forward_iterator_tag,如果
      std::derived_from<C, std::forward_iterator_tag> 是 true。否则,
    • std::input_iterator_tag。
iterator_concept typename /*inner-iterator*/<Const>::iterator_concept;
value_type
std::remove_cvref_t<std::invoke_result_t</*maybe-const*/<Const, F>&,
                    /*REPEAT*/(ranges::range_reference_t<Base>, N)...>>;
difference_type ranges::range_difference_t<Base>

数据成员

成员 描述
Parent* parent_ (私有) 指向父对象的指针
(仅用于说明的成员对象*)
inner_iterator inner_ (私有) 一个迭代器
(仅用于说明的成员对象*)

成员函数

构造迭代器
(公开成员函数)
访问元素
(公开成员函数)
通过索引访问元素
(公开成员函数)
前进或回退底层迭代器
(公开成员函数)

非成员函数

比较底层迭代器
(函数)
执行迭代器算术运算
(函数)

示例

参考文献

  • C++23 标准 (ISO/IEC 14882:2024):
  • 26.7.27.3 类模板 adjacent_transform_view:: iterator [range.adjacent_transform.iterator]

参见