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) |