C++ valarray log 函数模板

  • 定义和用法

    template<class T> valarray<T> log (const valarray<T>& x);
    std::log 计算valarray元素的自然对数。以相同顺序返回包含x的所有元素的自然对数(以e为底的对数)的valarray。该函数为每个元素调用一次log(不限定)。此函数使cmath的log 重写。
  • 参数

    参数 描述
    x valarray包含为其定义一元函数log的类型的元素。
  • 返回值

    具有x元素的自然对数的valarray对象。
  • 示例

    
    // log valarray example
    #include <iostream>     // std::cout
    #include <cstddef>      // std::size_t
    #include <cmath>        // std::log(double)
    #include <valarray>     // std::valarray, std::log(valarray)
    
    int main ()
    {
      double val[] = {5.0, 6.6, 8.0, 9.9};
      std::valarray<double> foo (val,4);
    
      std::valarray<double> bar = log (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: 5 6.6 8 9.9
    bar: 1.60944 1.88707 2.07944 2.29253
    
  • 相关页面

    log (cmath) 计算自然对数(函数)
    log10 计算valarray元素的常用对数(函数模板)
    exp 计算valarray元素的指数(函数模板)
    pow 计算valarray元素的功能(功能模板)