Freigeben über


swap

Die erste Überschreibung tauscht die Werte von zwei Objekten aus.Die zweite Überschreibung tauscht die Werte zwischen zwei Arrays aus.

template<class Type>
   void swap(
      Type& _Left, 
      Type& _Right
   );
template<class Type, size_t N>
   void swap(
      Type (&_Left)[N],
      Type (&_Right)[N]
   );

Parameter

  • _Left
    Für die erste Überschreibung das erste Objekt seinen Inhalt austauschen können.Für die zweite Überschreibung das erste Objektarray seinen Inhalt austauschen können.

  • _Right
    Für die erste Überschreibung das zweite Objekt seinen Inhalt austauschen können.Für die zweite Überschreibung das zweite Objektarray seinen Inhalt austauschen können.

Hinweise

Die erste Überladung wurde entwickelt, um einzelne Objekte an auszuführen.Die zweite Überladung lagert den Inhalt von Objekten zwischen zwei Arrays aus.

Beispiel

// 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;
}
  
  
  
  

Anforderungen

Header: <algorithm>

Namespace: std

Siehe auch

Referenz

Standardvorlagenbibliothek