Bibliothèque valarray C ++ - Application de la fonction

La description

Il retourne un tableau de valeurs avec chacun de ses éléments initialisé au résultat de l'application de func à son élément correspondant dans * this.

Déclaration

Voici la déclaration de la fonction 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;

Paramètres

func - C'est un pointeur vers une fonction prenant un argument de type T.

Valeur de retour

Il retourne un tableau de valeurs avec chacun de ses éléments initialisé au résultat de l'application de func à son élément correspondant dans * this.

Exceptions

Basic guarantee - si une opération effectuée sur les éléments lève une exception.

Courses de données

Tous les éléments effectivement copiés sont accessibles.

Exemple

L'exemple ci-dessous explique la fonction 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;
}

Compilons et exécutons le programme ci-dessus, cela produira le résultat suivant -

foo contains: 1 11 21 31 41