function template
<valarray>

std::sqrt

template<class T> valarray<T> sqrt (const valarray<T>& x);
計算 valarray 元素的平方根
返回一個 valarray,其中包含 x 中所有元素的平方根,順序相同。

該函式對每個元素呼叫一次 sqrt (未加限定)。

此函式過載了 cmath 的 sqrt

引數

x
包含一類元素的 valarray,該類的一元函式 sqrt 已定義。

返回值

一個 valarray 物件,包含 x 元素的平方根。

示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// sqrt valarray example
#include <iostream>     // std::cout
#include <cstddef>      // std::size_t
#include <cmath>        // std::sqrt(double)
#include <valarray>     // std::valarray, std::sqrt(valarray)

int main ()
{
  double val[] = {9.0, 25.0, 100.0};
  std::valarray<double> foo (val,3);

  std::valarray<double> bar = sqrt (foo);

  std::cout << "foo:";
  for (std::size_t i=0; i<foo.size(); ++i)
    std::cout << ' ' << foo[i];
  std::cout << '\n';

  std::cout << "bar:";
  for (std::size_t i=0; i<bar.size(); ++i)
    std::cout << ' ' << bar[i];
  std::cout << '\n';

  return 0;
}

輸出

foo: 9 25 100
bar: 3 5 10


另見