Partager via


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

Voir aussi

Référence

Bibliothèque STL (Standard Template Library)