C++ Array Library - swap() Function



Description

The C++ function std::array::swaps() swap contents of the array. This method takes other array as parameter and exchage contents of the both arrays in linear fashion by performing swap operation on induvisual element of array.

Declaration

Following is the declaration for std::array::swap() function form std::array header.

void swap (array& arr) noexcept(noexcept(swap(declval<value_type&>(),declval<value_type&>())));

Parameters

arr − another array of same type and size whose contents to be exchanged.

Return Value

None

Exceptions

None

Time complexity

Linear i.e. O(n)

Example

The following example shows the usage of std::array::swap() function.

#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;
}

Let us compile and run the above program, this will produce the following result −

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 
array.htm
Advertisements