C++ Functional Library - logical_and


Advertisements

Description

It is a logical AND function object class and binary function object class whose call returns the result of the logical "and" operation between its two arguments (as returned by operator &&).

Declaration

Following is the declaration for std::logical_and.

template <class T> struct logical_and;

C++11

template <class T> struct logical_and;

Parameters

T − It is a type of the arguments and return type of the functional call.

Return Value

none

Exceptions

noexcep − It doesn't throw any exceptions.

Example

In below example explains about 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;
}

Let us compile and run the above program, this will produce the following result −

Logical AND:
true AND true = true
false AND true = false
true AND false = false
false AND false = false
functional.htm
Advertisements