- C 标准库
- C 标准库
- C++ 标准库
- C++ 库 - 主页
- C++ 库 - <fstream>
- C++ 库 - <iomanip>
- C++ 库 - <ios>
- C++ 库 - <iosfwd>
- C++ 库 - <iostream>
- C++ 库 - <istream>
- C++ 库 - <ostream>
- C++ 库 - <sstream>
- C++ 库 - <streambuf>
- C++ 库 - <原子>
- C++ 库 - <复杂>
- C++ 库 - <异常>
- C++ 库 - <功能>
- C++ 库 - <限制>
- C++ 库 - <语言环境>
- C++ 库 - <内存>
- C++ 库 - <新>
- C++ 库 - <数字>
- C++ 库 - <正则表达式>
- C++ 库 - <stdexcept>
- C++ 库 - <字符串>
- C++ 库 - <线程>
- C++ 库 - <元组>
- C++ 库 - <类型信息>
- C++ 库 - <实用程序>
- C++ 库 - <valarray>
C++ 列表库 - swap() 函数
描述
C++ 函数std::list::swap()将第一个列表的内容与另一个列表交换。如果需要,此函数会更改列表的大小。
宣言
以下是 std::list::swap() 函数形式 std::list 标头的声明。
C++98
void swap (list& x);
参数
x - 相同类型的另一个列表对象。
返回值
没有任何。
例外情况
该成员函数从不抛出异常。
时间复杂度
常数即 O(1)
例子
以下示例显示了 std::list::swap() 函数的用法。
#include <iostream> #include <list> using namespace std; int main(void) { list<int> l1 = {1, 2, 3}; list<int> l2 = {10, 20, 30, 40, 50}; cout << "List l1 contains following elements before swap operation" << endl; for (auto it = l1.begin(); it != l1.end(); ++it) cout << *it << endl; cout << "List l2 contains following elements before swap operation" << endl; for (auto it = l2.begin(); it != l2.end(); ++it) cout << *it << endl; l1.swap(l2); cout << "List l1 contains following elements after swap operation" << endl; for (auto it = l1.begin(); it != l1.end(); ++it) cout << *it << endl; cout << "List l2 contains following elements after swap operation" << endl; for (auto it = l2.begin(); it != l2.end(); ++it) cout << *it << endl; return 0; }
让我们编译并运行上面的程序,这将产生以下结果 -
List l1 contains following elements before swap operation 1 2 3 List l2 contains following elements before swap operation 10 20 30 40 50 List l1 contains following elements after swap operation 10 20 30 40 50 List l2 contains following elements after swap operation 1 2 3
列表.htm