命名空间
变体
操作

std::ranges::zip_transform_view<F,Views...>::iterator

来自 cppreference.cn
 
 
范围库
范围适配器
 
 
template< bool Const >
class /*iterator*/;
(自 C++23 起)
(仅为演示*)

可能为 const 限定的 zip_transform_view 的迭代器类型,由 zip_transform_view::begin 以及在某些情况下由 zip_transform_view::end 返回。

类型 /*iterator*/<true>/*iterator*/<false> 分别将底层视图视为 const 限定或非 const 限定。

内容

[编辑] 成员类型

成员类型 定义
Parent (private) 如果 Constfalse,则为 zip_transform_view,否则为 const zip_transform_view
(仅为演示的成员类型*)
Base (private) 如果 Constfalse,则为 InnerView,否则为 const InnerView
(仅为演示的成员类型*)
iterator_category
(有条件地存在)

/*maybe-const*/<Const, F>& 表示如果 Consttrue,则为 const F&,否则为 F&
/*maybe-const*/<Const, Views> 表示如果 Consttrue,则为 const Views,否则为 Views

/*POT*/ 表示类型包 std::iterator_traits<std::iterator_t<
    /*maybe-const*/<Const, Views>>>::iterator_category...

如果 /*Base*/ 建模 forward_range,则 iterator_category 表示

不是引用。
  • 否则,
(std::derived_from</*POT*/, std::random_access_iterator_tag> && ...)true
(std::derived_from</*POT*/, std::bidirectional_iterator_tag> && ...)true
(std::derived_from</*POT*/, std::forward_iterator_tag> && ...)true

如果 /*Base*/ 不建模 forward_range,则不存在。

iterator_concept /*ziperator*/<Const>::iterator_concept
value_type

/*RREF*/ranges::range_reference_t<Views>...
/*CRREF*/ranges::range_reference_t<const Views>...。则

difference_type range::range_difference_t</*Base*/>

[编辑] 数据成员

成员对象 定义
parent_ (private) 指向父对象的指针 Parent*
(仅为演示的成员对象*)
inner_ (private) 类型为 ziperator<Const> 的迭代器。
(仅为演示的成员类型*)

[编辑] 成员函数

构造一个迭代器
(公有成员函数)
获取将可调用对象应用于底层指向元素的结果
(公有成员函数)
获取将可调用对象应用于给定偏移量处底层元素的结果
(公有成员函数)
前进或后退底层迭代器
(公有成员函数) [编辑]

[编辑] 非成员函数

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

[编辑] 示例