Libreria C ++ valarray - Scambio di funzioni

Descrizione

Scambia i contenuti di * this e x.

Dichiarazione

Di seguito è riportata la dichiarazione per la funzione std :: valarray :: swap.

template <class T>
   void swap (valarray<T>& x, valarray<T>& y) noexcept;

C ++ 11

template <class T>
   void swap (valarray<T>& x, valarray<T>& y) noexcept;

Parametri

x,y - Questi sono gli altri oggetti valarray dello stesso tipo.

Valore di ritorno

nessuna

Eccezioni

Basic guarantee - se qualsiasi operazione eseguita sugli elementi genera un'eccezione.

Gare di dati

Si accede a tutti gli elementi effettivamente copiati.

Esempio

Nell'esempio seguente viene spiegato la funzione std :: valarray :: swap.

#include <iostream>
#include <valarray>

int main () {
   std::valarray<int> foo {0,10,20,30};
   std::valarray<int> bar {100,200,300};

   foo.swap(bar);

   std::cout << "foo contains:";
   for (auto& x: foo) std::cout << ' ' << x;
   std::cout << '\n';

   std::cout << "bar contains:";
   for (auto& x: bar) std::cout << ' ' << x;
   std::cout << '\n';

   return 0;
}

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

foo contains: 100 200 300
bar contains: 0 10 20 30