std::swap(std::valarray)
Min standard notice:
Header: <valarray>
Specializes the std::swap algorithm for std::valarray. Swaps the contents of lhs and rhs. Calls lhs.swap(rhs).
# Declarations
template< class T >
void swap( std::valarray<T>& lhs, std::valarray<T>& rhs ) noexcept;
(since C++11)
# Parameters
lhs, rhs: valarrays whose contents to swap
# Return value
(none)
# Example
#include <iostream>
#include <valarray>
void print(auto rem, const std::valarray<int>& v)
{
std::cout << rem << '{';
for (char sep[]{0, ' ', 0}; auto elem : v)
std::cout << sep << elem, *sep = ',';
std::cout << "}\n";
}
int main()
{
std::valarray x{3, 1, 4, 1, 5};
std::valarray y{2, 7, 1, 8};
print("Before swap:\n" "x: ", x);
print("y: ", y);
std::swap(x, y);
print("After swap:\n" "x: ", x);
print("y: ", y);
}