交换两deques的元素。
void swap(
deque<Type, Allocator>& _Right
);
friend void swap(
deque<Type, Allocator>& _Left,
deque<Type, Allocator>& _Right
)
template<class Type, class Allocator>
void swap(
deque< Type, Allocator>& _Left,
deque< Type, Allocator>& _Right
);
参数
_Right
组件将交换与、向量、双端队列 _Left的、向量、双端队列提供元素的将交换或、向量、双端队列。_Left
组件将交换与、向量、双端队列 _Right的、向量、双端队列。
示例
// deque_swap.cpp
// compile with: /EHsc
#include <deque>
#include <iostream>
int main( )
{
using namespace std;
deque <int> c1, c2, c3;
deque <int>::iterator c1_Iter;
c1.push_back( 1 );
c1.push_back( 2 );
c1.push_back( 3 );
c2.push_back( 10 );
c2.push_back( 20 );
c3.push_back( 100 );
cout << "The original deque c1 is:";
for ( c1_Iter = c1.begin( ); c1_Iter != c1.end( ); c1_Iter++ )
cout << " " << *c1_Iter;
cout << endl;
c1.swap( c2 );
cout << "After swapping with c2, deque c1 is:";
for ( c1_Iter = c1.begin( ); c1_Iter != c1.end( ); c1_Iter++ )
cout << " " << *c1_Iter;
cout << endl;
swap( c1,c3 );
cout << "After swapping with c3, deque c1 is:";
for ( c1_Iter = c1.begin( ); c1_Iter != c1.end( ); c1_Iter++ )
cout << " " << *c1_Iter;
cout << endl;
swap<>(c1, c2);
cout << "After swapping with c2, deque c1 is:";
for ( c1_Iter = c1.begin( ); c1_Iter != c1.end( ); c1_Iter++ )
cout << " " << *c1_Iter;
cout << endl;
}
要求
标头: <deque>
命名空间: std