Bibliothèque fonctionnelle C ++ - logical_and

La description

Il s'agit d'une classe d'objets de fonction ET logique et d'une classe d'objets de fonction binaire dont l'appel renvoie le résultat de l'opération logique "et" entre ses deux arguments (comme renvoyé par l'opérateur &&).

Déclaration

Voici la déclaration de std :: logical_and.

template <class T> struct logical_and;

C ++ 11

template <class T> struct logical_and;

Paramètres

T - C'est un type des arguments et un type de retour de l'appel fonctionnel.

Valeur de retour

aucun

Des exceptions

noexcep - Il ne jette aucune exception.

Exemple

Dans l'exemple ci-dessous, explique std :: logical_and.

#include <iostream>
#include <functional>
#include <algorithm>

int main () {
   bool foo[] = {true,false,true,false};
   bool bar[] = {true,true,false,false};
   bool result[4];
   std::transform (foo, foo+4, bar, result, std::logical_and<bool>());
   std::cout << std::boolalpha << "Logical AND:\n";
   for (int i=0; i<4; i++)
      std::cout << foo[i] << " AND " << bar[i] << " = " << result[i] << "\n";
   return 0;
}

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

Logical AND:
true AND true = true
false AND true = false
true AND false = false
false AND false = false