當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


C++ valarray apply用法及代碼示例



描述

它返回一個 valarray,其每個元素都初始化為將 func 應用於 *this 中的相應元素的結果。

聲明

以下是 std::valarray::apply 函數的聲明。

valarray apply (T func(T)) const;
valarray apply (T func(const T&)) const;

C++11

valarray apply (T func(T)) const;
valarray apply (T func(const T&)) const;

參數

func�它是一個指向一個函數的指針,該函數帶有一個類型為 T 的參數。

返回值

它返回一個 valarray,其每個元素都初始化為將 func 應用於 *this 中的相應元素的結果。

異常

Basic guarantee- 如果對元素執行的任何操作拋出異常。

數據競爭

訪問所有有效複製的元素。

示例

在下麵的例子中解釋了 std::valarray::apply 函數。

#include <iostream>
#include <cstddef>
#include <valarray>

int increment (int x) {return ++x;}

int main () {
   int init[]={0,10,20,30,40};
   std::valarray<int> foo (init,5);

   std::valarray<int> bar = foo.apply(increment);

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

   return 0;
}

讓我們編譯並運行上麵的程序,這將產生以下結果——

foo contains:1 11 21 31 41 

相關用法


注:本文由純淨天空篩選整理自 C++ valarray Library - Function apply。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。