operator+,-(ranges::concat_view::iterator)
| friend constexpr /*iterator*/ operator+( const /*iterator*/& it, difference_type n ) |
(1) | (C++26 起) |
| friend constexpr /*iterator*/ operator+( difference_type n, const /*iterator*/& it ) |
(2) | (C++26 起) |
| friend constexpr /*iterator*/ operator-( const /*iterator*/& it, difference_type n ) |
(3) | (C++26 起) |
| friend constexpr difference_type operator-( const /*iterator*/& x, const /*iterator*/& y ) |
(4) | (C++26 起) |
| friend constexpr difference_type operator-( const /*iterator*/& x, std::default_sentinel_t ) |
(5) | (C++26 起) |
| friend constexpr difference_type operator-( std::default_sentinel_t, const /*iterator*/& x ) |
(6) | (C++26 起) |
递增或递减迭代器。
it_ .index(),Iy 为 y.it_ .index()- 若 Ix > Iy 为 true,则等价于 difference_type result = ranges::distance(y.
get-iter<Iy>(), y.get-end<Iy>());
for (std::size_t I = Iy + 1; I < Ix; I++)result += ranges::distance(x.get-view<I>());
return result + ranges::distance(x.get-begin<Ix>(), x.get-iter<Ix>());。 - 否则,若 Ix < Iy 为 true,则等价于 return -(y - x);。
- 否则,等价于 return x.
get-iter<Ix>() - y.get-iter<Iy>();。
it_ .index(),等价于 difference_type result = ranges::distance(x.get-iter <Ix>(), x.get-end <Ix>());for (std::size_t I = Ix + 1, count = sizeof...(Views); I < count; I++)
result += ranges::distance(x.get-view <I>());return -result;。
Fs 为除第一个元素外 Views 的所有元素组成的包,则 requires 子句中的表达式等价于 (std::sized_sentinel_for<ranges::sentinel_t<maybe-const <Const, Views>>,
ranges::iterator_t<maybe-const <Const, Views>>> && ...) &&
(ranges::sized_range<maybe-const <Const, Fs>> && ...)
it_ .valueless_by_exception() 为 true,则行为未定义。Fs 为除第一个元素外 Views 的所有元素组成的包,则 requires 子句中的表达式等价于 (std::sized_sentinel_for<ranges::sentinel_t<maybe-const <Const, Views>>,
ranges::iterator_t<maybe-const <Const, Views>>> && ...) &&
(ranges::sized_range<maybe-const <Const, Fs>> && ...)
it_ .valueless_by_exception() 为 true,则行为未定义。这些函数对于普通的非限定或限定查找不可见,并且只有在 concat_view::iterator <Const> 是参数的关联类时,才能通过实参依赖查找找到。
目录 |
[编辑] 参数
| it, x, y | - | 迭代器 |
| n | - | 一个相对于当前位置的位置 |
[编辑] 返回值
如上所述。
[编辑] 示例
| 本节不完整 原因:无示例 |
[编辑] 参阅
| 前进或后退底层迭代器 (public member function) |