[ Web Proxy ]
URL:
Viewing: https://fr.cppreference.com/cpp/concept/ValueSwappable [Back]  [Original]

<div class="t-tr-text">Concepts C + +:<div class="t-tr-dropdown"><div><div><div class="t-tr-dropdown-arrow-border"></div><div class="t-tr-dropdown-arrow"></div><div class="t-tr-dropdown-h">Original:</div><div class="t-tr-dropdown-orig">C++ concepts:</div><div class="t-tr-dropdown-notes">The text has been machine-translated via [http://translate.google.com Google Translate].<br/> You can help to correct and verify the translation. Click [http://en.cppreference.com/w/Cppreference:MachineTranslations here] for instructions.</div></div></div></div></div> ValueSwappable cppreference.com
cppreference.com
Espaces de noms
Variantes

<div class="t-tr-text">Concepts C + +:<div class="t-tr-dropdown"><div><div><div class="t-tr-dropdown-arrow-border"></div><div class="t-tr-dropdown-arrow"></div><div class="t-tr-dropdown-h">Original:</div><div class="t-tr-dropdown-orig">C++ concepts:</div><div class="t-tr-dropdown-notes">The text has been machine-translated via [http://translate.google.com Google Translate].<br/> You can help to correct and verify the translation. Click [http://en.cppreference.com/w/Cppreference:MachineTranslations here] for instructions.</div></div></div></div></div> ValueSwappable

De cppreference.com

<metanoindex/>

 
 
C + + concepts
De base
Original:
Basic
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Bibliothque chelle
Original:
Library-Wide
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
NullablePointer (C++11)
Hash (C++11)
Allocator
Rcipient
Original:
Container
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
lments de conteneurs
Original:
Container Elements
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
CopyInsertable (C++11)
MoveInsertable (C++11)
Iterator
Original:
Iterator
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Nombres alatoires
Original:
Random Numbers
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Simultanit
Original:
Concurrency
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
BasicLockable (C++11)
Lockable (C++11)
TimedLockable (C++11)
Mutex (C++11)
TimedMutex (C++11)
Autre
Original:
Other
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
 
Deux objets de ce type peut tre drfrenc et les valeurs rsultantes peuvent tre changs l'aide sans rserve swap() appel de fonction dans le contexte o les deux std::swap et les swap()s dfinies par l'utilisateur sont visibles .
Original:
Two objects of this type can be dereferenced and the resulting values can be swapped using unqualified function call swap() in the context where both std::swap and the user-defined swap()s are visible.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

Exigences

Type T est ValueSwappable si
Original:
Type T is ValueSwappable if
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
1)
T type satisfait aux exigences Iterator
Original:
Type T satisfies the Iterator requirements
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
2)
Pour toute x objet dereferencable de T type (c'est dire toute valeur autre que l'itrateur de fin), *x satisfait aux exigences Swappable .
Original:
For any dereferencable object x of type T (that is, any value other than the end iterator), *x satisfies the Swappable requirements.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
De nombreuses fonctions de la bibliothque standard attendent de leurs arguments pour satisfaire ValueSwappable, ce qui signifie que chaque fois que la bibliothque standard effectue un swap, il utilise l'quivalent de using std::swap; swap(*iter1, *iter2): .
Original:
Many standard library functions expect their arguments to satisfy ValueSwappable, which means that any time the standard library performs a swap, it uses the equivalent of using std::swap; swap(*iter1, *iter2):.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

Exemple

#include <iostream>
#include <vector>

class IntVector {
    std::vector<int> v;
    IntVector& operator=(IntVector); // not assignable
 public:
    void swap(IntVector& other) {
        v.swap(other.v);
    }
};
void swap(IntVector& v1, IntVector& v2) {
    v1.swap(v2);
}

int main()
{
    IntVector v1, v2;    // IntVector is Swappable, but not MoveAssignable
    IntVector* p1 = &v1;
    IntVector* p2 = &v2; // IntVector* is ValueSwappable
    std::iter_swap(p1, p2); // OK: iter_swap requires ValueSwappable
//  std::swap(v1, v2); // compiler error! std::swap requires MoveAssignable
}



Web Proxy Viewer  |  New URL  |  Original Page