1.功能:交换两个容器的元素
2.函数原型
- swap( container c1, container c2)
- c1容器1
- c2容器2
#include<iostream> #include<vector> #include<algorithm> #include<ctime> using namespace std; class myprint { public: void operator()(int val) { cout << val << " "; } }; class greater5 { public: bool operator()(int val) { return val > 5; } }; void test1() { vector<int> v1; v1.push_back(2); v1.push_back(8); v1.push_back(6); vector<int>v2; v2.push_back(5); v2.push_back(4); v2.push_back(2); cout << "交换前:" << endl; for_each(v1.begin(), v1.end(), myprint()); //遍历容器v 2 8 6 cout << endl; for_each(v2.begin(), v2.end(), myprint()); //遍历容器v 5 4 2 cout << endl; cout << "交换后:" << endl; swap(v1, v2); // 等价于 v1.swap(v2); for_each(v1.begin(), v1.end(), myprint()); //遍历容器v 5 4 2 cout << endl; for_each(v2.begin(), v2.end(), myprint()); //遍历容器v 2 8 6 cout << endl; } int main() { test1(); return 0; }