<QtSwap>

Intervertit les valeurs de deux variables. Plus d'informations...

Header: #include <QtSwap>

Les fonctions

void qSwap(T &lhs, T &rhs)

Description détaillée

Documentation sur les fonctions

[constexpr noexcept(...)] template <typename T> void qSwap(T &lhs, T &rhs)

Échange les valeurs des variables lhs et rhs, en tenant compte des surcharges swap() spécifiques au type.

Cette fonction est la version Qt de boost::swap()et est équivalente à

using std::swap;   // bring std::swap into scope (for built-in types)
swap(lhs, rhs);    // unqualified call (picks up type-specific overloads
                   // via Argument-Dependent Lookup, or falls back to std::swap)

Utilisez cette fonction principalement dans le code générique, où vous auriez traditionnellement écrit les deux lignes ci-dessus, parce que vous ne savez rien de T.

Si vous savez déjà ce qu'est T, utilisez l'une des options suivantes, par ordre de préférence :

  • lhs.swap(rhs); si un tel échange de membres existe
  • std::swap(lhs, rhs); s'il n'existe pas de swap() spécifique au type

Voir boost::swap() sur boost.org pour plus de détails.

Voir aussi std::swap sur cppreference.com, Swappable sur cppreference.com.

Note : Cette fonction est noexcept lorsque std::is_nothrow_swappable_v<T> est true.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.