iter_move(ranges::concat_view::iterator)

来自cppreference.com
< cpp‎ | ranges‎ | concat view‎ | iterator


 
 
范围库
范围适配器
 
 
friend constexpr decltype(auto)
    iter_move( const /*iterator*/& it ) noexcept(/* 见描述 */);
(C++26 起)

返回对 it_ 包含的底层迭代器应用 ranges::iter_move 的结果。

Refconcat-rvalue-reference-t <maybe-const <Const, Views>...>。等价于 return std::visit([](const auto& i) -> Ref { return ranges::iter_move(i); }, it.it_ );

如果 it.it_.valueless_by_exception()true,那么行为未定义。

此函数对常规的无限定有限定查找不可见,而只能在 concat_view::iterator <Const> 为实参的关联类时由实参依赖查找找到。

参数

it-迭代器

返回值

对底层迭代器应用 ranges::iter_move 的结果。

异常

noexcept 说明:  
noexcept(

    ((std::is_nothrow_invocable_v
          <decltype(ranges::iter_move),
           const ranges::iterator_t</*maybe-const*/<Const, Views>>&> &&
      std::is_nothrow_convertible_v<ranges::range_rvalue_reference_t
                                        </*maybe-const*/<Const, Views>>, Ref>) && ...)

)