C++ Array 库 - swap() 函数
描述
C++ 函数 std::array::swaps() 交换数组的内容。 该方法以其他数组为参数,通过对数组的单个元素执行交换操作,以线性方式交换两个数组的内容。
声明
以下是 std::array::swap() 函数形式 std::array 头的声明。
void swap (array& arr) noexcept(noexcept(swap(declval<value_type&>(),declval<value_type&>())));
参数
arr − 另一个要交换其内容的相同类型和大小的数组。
返回值
None
异常
None
时间复杂度
线性,即 O(n)
示例
以下示例显示了 std::array::swap() 函数的用法。
#include <iostream> #include <array> using namespace std; int main(void) { array<int, 3> arr1 = {10, 20, 30}; array<int, 3> arr2 = {51, 52, 53}; cout << "Contents of arr1 and arr2 before swap operation\n"; cout << "arr1 = "; for (int &i : arr1) cout << i << " "; cout << endl; cout << "arr2 = "; for (int &i : arr2) cout << i << " "; cout << endl << endl; arr1.swap(arr2); cout << "Contents of arr1 and arr2 after swap operation\n"; cout << "arr1 = "; for (int &i : arr1) cout << i << " "; cout << endl; cout << "arr2 = "; for (int &i : arr2) cout << i << " "; cout << endl; return 0; }
让我们编译并运行上面的程序,这将产生以下结果 −
Contents of arr1 and arr2 before swap operation arr1 = 10 20 30 arr2 = 51 52 53 Contents of arr1 and arr2 after swap operation arr1 = 51 52 53 arr2 = 10 20 30