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 的结果。
令 MCV
为 std::conditional_t<Const, const Views, Views>。等价于:
return std::visit( [](const auto& i) -> /*concat-rvalue-reference-t*/<MCV...> { return ranges::iter_move(i); }, it.it_ );
调用这个函数前,it.
it_
.
valueless_by_exception() 必须为 false。否则,其行为未定义。
此函数对常规的无限定或有限定查找不可见,而只能在 concat_view::iterator<Const>
为实参的关联类时由实参依赖查找找到。
参数
it | - | iterator |
返回值
对底层迭代器实施 ranges::iter_move 的结果。
异常
noexcept 说明:
noexcept(
(std::is_nothrow_invocable_v<decltype(ranges::iter_move),
const ranges::iterator_t<MCV>&> &&
std::is_nothrow_convertible_v<ranges::range_rvalue_reference_t<MCV>,
/*concat-rvalue-reference-t*/<MCV...>>) && ...