swap
La première substitution échanger des valeurs de deux objets. La deuxième substitution échanger des valeurs entre deux tableau d'objets.
template<class Type>
void swap(
Type& _Left,
Type& _Right
);
template<class Type, size_t N>
void swap(
Type (&_Left)[N],
Type (&_Right)[N]
);
Paramètres
_Left
Pour la première substitution, le premier objet pour effectuer l'échange son contenu. Pour la deuxième substitution, le premier tableau d'objets pour effectuer l'échange son contenu._Right
Pour la première substitution, le deuxième objet pour effectuer l'échange son contenu. Pour la deuxième substitution, le deuxième tableau d'objets pour effectuer l'échange son contenu.
Notes
La première surcharge est conçue pour traiter des objets. La deuxième surcharge habite le contenu des objets entre deux tables.
Exemple
// alg_swap.cpp
// compile with: /EHsc
#include <vector>
#include <algorithm>
#include <iostream>
int main( )
{
using namespace std;
vector <int> v1, v2;
vector <int>::iterator Iter1, Iter2, result;
for ( int i = 0 ; i <= 10 ; i++ )
{
v1.push_back( i );
}
for ( int ii = 0 ; ii <= 4 ; ii++ )
{
v2.push_back( 5 );
}
cout << "Vector v1 is ( " ;
for ( Iter1 = v1.begin( ) ; Iter1 != v1.end( ) ; Iter1++ )
cout << *Iter1 << " ";
cout << ")." << endl;
cout << "Vector v2 is ( " ;
for ( Iter2 = v2.begin( ) ; Iter2 != v2.end( ) ; Iter2++ )
cout << *Iter2 << " ";
cout << ")." << endl;
swap( v1, v2 );
cout << "Vector v1 is ( " ;
for ( Iter1 = v1.begin( ) ; Iter1 != v1.end( ) ; Iter1++ )
cout << *Iter1 << " ";
cout << ")." << endl;
cout << "Vector v2 is ( " ;
for ( Iter2 = v2.begin( ) ; Iter2 != v2.end( ) ; Iter2++ )
cout << *Iter2 << " ";
cout << ")." << endl;
}
Configuration requise
En-tête : <algorithme>
Espace de noms : std