Descripción
Es una clase de objeto de función lógica AND y una clase de objeto de función binaria cuya llamada devuelve el resultado de la operación lógica "y" entre sus dos argumentos (como lo devuelve el operador &&).
Declaración
A continuación se muestra la declaración para std :: logic_and.
template <class T> struct logical_and;
C ++ 11
template <class T> struct logical_and;
Parámetros
T - Es un tipo de argumentos y tipo de retorno de la llamada funcional.
Valor devuelto
ninguna
Excepciones
noexcep - No arroja excepciones.
Ejemplo
En el siguiente ejemplo se explica sobre std :: logic_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;
}
Compilemos y ejecutemos el programa anterior, esto producirá el siguiente resultado:
Logical AND:
true AND true = true
false AND true = false
true AND false = false
false AND false = false