iter_swap(ranges::cartesian_product_view::iterator)
From cppreference.com
< cpp | ranges | cartesian product view | iterator
| friend constexpr void iter_swap( const /*iterator*/& x, const /*iterator*/& y ) noexcept (/* 説明を参照 */) |
(C++23から) | |
格納されている基底のイテレータに対して ranges::iter_swap を適用します。形式的には、すべての整数 0 ≤ i ≤ sizeof...(Vs) について、 ranges::iter_swap(std::get<i>(x.current_), std::get<i>(y.current_)) を実行します。ここで、current_ は基底のイテレータのタプルです。
この関数は、通常の 非修飾または 修飾ルックアップからは見えず、cartesian_product_view::iterator<Const> が引数に関連付けられたクラスである場合にのみ、引数依存名前探索によって見つけることができます。
目次 |
[編集] パラメータ
| x, y | - | 交換する要素へのイテレータ |
[編集] 戻り値
(なし)
[編集] 例外
例外仕様は、すべての整数 0 ≤ i ≤ sizeof...(Vs) について、式 noexcept(ranges::iter_swap(std::get<i>(x.current_), std::get<i>(y.current_))) の論理 AND と同等です。
[編集] 関連項目
| (C++20) |
2つの間接参照可能なオブジェクトが参照する値を交換する (カスタマイゼーションポイントオブジェクト) |
| 2つのイテレータが指す要素をスワップする (関数テンプレート) |