std::ranges::zip_transform_view<F,Views...>::iterator<Const>::operator*
来自cppreference.com
< cpp | ranges | zip transform view | iterator
constexpr decltype(auto) operator*() const noexcept(/* 见描述 */); |
(C++23 起) | |
返回通过对底层的所指向元素应用 F 类型的可调用对象所获得的变换后的元素。
等价于
return std::apply ( [&](auto const&... iters) -> decltype(auto) { return std::invoke(*parent_->fun_, *iters...); }, inner_.current_ );
其中 *parent_->fun_ 是存储于父 ranges::zip_transform_view 中的变换函数,而 current_
是底层的指向 Views... 的迭代器的元组。
参数
(无)
返回值
作为转换(映射)结果的元素。
异常
noexcept 说明:
noexcept(std::invoke(*parent_->fun_, *std::get<INTS>(inner_.current_)...))
- 其中
INTS
为整数包0, 1, ..., (sizeof...(Views)-1)
。
- 其中
注解
不提供 operator->。
如果指向父 ranges::zip_transform_view 的指针 parent_
为空(比如当 *this 被默认构造时),其行为未定义。
示例
本节未完成 原因:暂无示例 |