たとえば、a,bというvectorがあったとすれば、この要素をそっくり 入れ替えます。
また、aの中の特定の2つの要素を入れ替えることもできます。
では、簡単なサンプルを見てみましょう。
// swap01.cpp #include <iostream> #include <vector> #include <algorithm> using namespace std; int main() { vector <int> v, w; vector <int>::iterator p; v.push_back(10); v.push_back(100); v.push_back(200); w.push_back(1); w.push_back(2); cout << "v:"; for (p = v.begin(); p != v.end(); p++) cout << *p << ", "; cout << endl; cout << "w:"; for(p = w.begin(); p != w.end(); p++) cout << *p << ", "; cout << endl; swap(v, w); cout << "v:"; for (p = v.begin(); p != v.end(); p++) cout << *p << ", "; cout << endl; cout << "w:"; for(p = w.begin(); p != w.end(); p++) cout << *p << ", "; cout << endl; swap(w[0], w[2]); cout << "w:"; for(p = w.begin(); p != w.end(); p++) cout << *p << ", "; cout << endl; return 0; }最初にv,wの要素を示しています。
次にswap関数でv,wの要素を入れ替えました。
さらに、今度はwのなかの要素を入れ替えています。
今回も簡単でした。
Update Aug/13/2005 By Y.Kumei