Namespaces
Variants

iter_move (ranges::transform_view:: iterator )

From cppreference.net
Ranges library
Range adaptors
friend constexpr decltype ( auto ) iter_move ( const /*iterator*/ & i )
noexcept ( /* see below */ ) ;
(C++20 起)

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

此函数对普通的 非限定查找 限定查找 不可见,仅当 transform_view:: iterator <Const> 作为参数关联类时,才能通过 实参依赖查找 找到该函数。

参数

i - iterator

返回值

* i 是左值引用时使用 std :: move ( * i ) ,否则直接使用 * i

异常

noexcept 规范:
noexcept ( noexcept ( std:: invoke ( * i. parent_ - > fun_, * i. current_ ) ) )
where * i. parent_ - > fun_ denotes the transformation function, i. current_ denotes the underlying iterator.