目录

swap

描述 (Description)

它交换* this和x的内容。

声明 (Declaration)

以下是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;

参数 (Parameters)

x,y - 这是相同类型的另一个valarray对象。

返回值 (Return Value)

没有

异常 (Exceptions)

Basic guarantee - 如果对元素执行的任何操作引发异常。

数据竞争 (Data races)

访问有效复制的所有元素。

例子 (Example)

在下面的例子中解释了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;
}

让我们编译并运行上面的程序,这将产生以下结果 -

foo contains: 100 200 300
bar contains: 0 10 20 30
↑回到顶部↑
WIKI教程 @2018