iter_swap(ranges::cartesian_product_view::iterator)
friend constexpr void iter_swap( const /*iterator*/& x, const /*iterator*/& y )
noexcept (/* see description */)
requires (std::indirectly_swappable<
ranges::iterator_t</*maybe-const*/<Const, First>>> and ... and
std::indirectly_swappable<ranges::iterator_t</*maybe-const*/<Const, Vs>>>);
|
(depuis C++23) | |
Applique ranges::iter_swap aux itérateurs sous-jacents stockés. Formellement, pour chaque entier 0 ≤ i ≤ sizeof...(Vs), effectue ranges::iter_swap(std::get<i>(x.current_), std::get<i>(y.current_)), où current_ est le tuple sous-jacent d'itérateurs.
Cette fonction n'est pas visible lors de la recherche non qualifiée ou de la recherche qualifiée ordinaire, et ne peut être trouvée que par la recherche dépendante des arguments lorsque cartesian_product_view::iterator<Const> est une classe associée des arguments.
Paramètres
| x, y | - | itérateurs vers les éléments à échanger |
Valeur de retour
(aucun)
Exceptions
La spécification d'exception est équivalente au ET logique de l'expression noexcept ( ranges:: iter_swap ( std :: get < i > ( x. current_ ) , std :: get < i > ( y. current_ ) ) ) pour chaque entier 0 ≤ i ≤ sizeof... ( Vs ) .
Voir aussi
|
(C++20)
|
échange les valeurs référencées par deux objets déréférençables
(objet de point de personnalisation) |
|
échange les éléments pointés par deux itérateurs
(modèle de fonction) |