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