C ++ Array Library - Funzione swap ()

Descrizione

La funzione C ++ std::array::swaps()scambia i contenuti dell'array. Questo metodo prende un altro array come parametro e scambia i contenuti di entrambi gli array in modo lineare eseguendo un'operazione di scambio su un singolo elemento dell'array.

Dichiarazione

Di seguito è riportata la dichiarazione per la funzione std :: array :: swap () nel formato std :: array header.

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

Parametri

arr - un altro array dello stesso tipo e dimensione il cui contenuto deve essere scambiato.

Valore di ritorno

Nessuna

Eccezioni

Nessuna

Complessità temporale

Lineare cioè O (n)

Esempio

L'esempio seguente mostra l'utilizzo della funzione 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;
}

Compiliamo ed eseguiamo il programma sopra, questo produrrà il seguente risultato:

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