operator+,- (ranges::enumerate_view:: iterator )
ja.cppreference.net より
friend constexpr /* iterator */
operator+( const /* iterator */& i, difference_type n )
requires ranges::random_access_range</* Base */>;
|
(1) | (C++23 以降) |
friend constexpr /* iterator */
operator+( difference_type n, const /* iterator */& i )
requires ranges::random_access_range</* Base */>;
|
(2) | (C++23 以降) |
friend constexpr /* iterator */
operator-( const /* iterator */& i, difference_type n )
requires ranges::random_access_range</* Base */>;
|
(3) | (C++23 以降) |
friend constexpr difference_type
operator-( const /* iterator */& i, const /* iterator */& j ) noexcept;
|
(4) | (C++23 以降) |
イテレータ iterator 算術演算を実行するか、距離を計算します。
pos_ は基底インデックスであり、Base は (おそらく const 修飾された) 基底ビューの型です。
以下と同等:
1)
auto temp = i; temp += n; return temp; 2)
return i + n; 3)
auto temp = i; temp -= n; return temp; 4)
return i.pos_ - j.pos_; これらの関数は通常の 非修飾 または 修飾ルックアップ では見えず、 引数依存ルックアップ によってのみ、enumerate_view::iterator<Const> が引数の関連クラスである場合に見つけられます。
パラメータ
| i, j | - | イテレータ |
| n | - | 現在位置からの相対位置 |
戻り値
1,2)
インクリメントされたイテレータ。
3)
デクリメントされたイテレータ。
4)
指定されたイテレータ間の距離。
例
|
このセクションは不完全です
理由: 例がありません |
不具合報告
以下の動作変更の欠陥報告書は、以前に公開されたC++規格に対して遡及的に適用されました。
| DR | 適用対象 | 公開時の動作 | 正しい動作 |
|---|---|---|---|
| LWG 3912 | C++23 | オーバーロード (4) は noexcept ではなかった | 現在は noexcept である |
関連項目
|
基となるイテレータを進めるまたは戻す
(公開メンバ関数) |