命名空间
变体
操作

iter_move(ranges::transform_view::iterator)

来自 cppreference.cn
 
 
范围库 (Ranges library)
范围适配器 (Range adaptors)
 
 
friend constexpr decltype(auto) iter_move( const /*iterator*/& i )
    noexcept(/* 见下 */);
(C++20 起)

如果 *i 是左值引用,则返回 std::move(*i);否则返回 *i

此函数对于普通的非限定查找限定查找不可见,并且只能通过实参依赖查找transform_view::iterator<Const> 是实参的关联类时找到。

[编辑] 参数

i - 迭代器

[编辑] 返回值

如果 *i 是左值引用,则为 std::move(*i),否则为 *i

[编辑] 异常

noexcept 规范:  
noexcept(noexcept(std::invoke(*i.parent_->fun_, *i.current_)))
其中 *i.parent_->fun_ 表示变换函数,i.current_ 表示底层迭代器。