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


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


apply()函數在valarray頭文件中定義。此函數返回一個valarray,其每個元素均初始化為將func應用於* this中的相應元素的結果。

用法:

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

參數:此方法接受強製性參數func,該函數表示采用類型T的參數的函數的指針。


返回值:此方法返回一個valarray對象,並將func應用於* this的所有元素。

以下示例程序旨在說明上述函數:

示例1:

// C++ program to demonstrate 
// example of apply() function. 
  
#include <bits/stdc++.h> 
using namespace std; 
  
int main() 
{ 
  
    // Initializing valarray 
    valarray<int> varr = { 15, 10, 30, 33, 40 }; 
  
    // Declaring new valarray 
    valarray<int> varr1; 
  
    // Using apply() to increment all elements by 5 
    varr1 = varr.apply([](int x) { return x = x + 5; }); 
  
    // Displaying new elements value 
    cout << "The new valarray "
         << "with manipulated values is:"; 
  
    for (int& x:varr1) 
        cout << x << " "; 
  
    cout << endl; 
  
    return 0; 
}
輸出:
The new valarray with manipulated values is:20 15 35 38 45

示例2:

// C++ program to demonstrate 
// example of apply() function. 
  
#include <bits/stdc++.h> 
using namespace std; 
  
int main() 
{ 
  
    // Initializing valarray 
    valarray<int> varr = { 15, 10, 30, 33, 40 }; 
  
    // Declaring new valarray 
    valarray<int> varr1; 
  
    // Using apply() to decrement all elements by 5 
    varr1 = varr.apply([](int x) { return x = x - 5; }); 
  
    // Displaying new elements value 
    cout << "The new valarray"
         << " with manipulated values is:"; 
  
    for (int& x:varr1) 
        cout << x << " "; 
  
    cout << endl; 
  
    return 0; 
}
輸出:
The new valarray with manipulated values is:10 5 25 28 35


相關用法


注:本文由純淨天空篩選整理自bansal_rtk_大神的英文原創作品 valarray apply() in C++。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。