std::logical_and
                 | template< class T >
struct logical_and; |  | (until C++14) | 
  | template< class T = void >
struct logical_and; |  | (since C++14) | 
   
 Function object for performing logical AND (logical conjunction). Effectively calls operator&& on type T.
Specializations
  
| The standard library provides a specialization of std::logical_andwhenTis not specified, which leaves the parameter types and return type to be deduced.   |  | function object implementing x && ydeducing argument and return types(class template specialization)
 |  | (since C++14) | 
 
  
|  Member types  | Type | Definition |   | result_type(deprecated in C++17) | bool |   | first_argument_type(deprecated in C++17) | T |   | second_argument_type(deprecated in C++17) | T |  | (until C++20) | 
 
 Member functions
   | operator() | returns the logical AND of the two arguments (public member function)
 | 
 
    std::logical_and::operator() 
     | bool operator()( const T& lhs, const T& rhs ) const; |  | (until C++14) | 
  | constexpr bool operator()( const T& lhs, const T& rhs ) const; |  | (since C++14) | 
   
 Returns the logical AND of lhs and rhs.
 Parameters
   | lhs, rhs | - | values to compute logical AND of | 
  Return value
 The result of lhs && rhs.
 Exceptions
 (none).
 Possible implementation
   | constexpr bool operator()(const T &lhs, const T &rhs) const 
{
    return lhs && rhs;
} |