C ++中的logical_and

在本文中,我们将讨论C ++中logical_and函数对象类的工作,语法和示例。

什么是logical_and?

logical_and二进制函数是C ++中的内置二进制函数对象类,在<functional>头文件中定义。logical_and是一个二进制函数,用于提供两个参数之间的逻辑“ and”运算结果。

逻辑AND是仅当两个二进制值都为true时才返回true的二进制操作。

逻辑和的语法

Template struct logical_and : binary_function
{
   T operator() (const T& a, const T& b) const {return a&b&; }
};

模板参数

该函数接受以下参数-

  • T-这是传递给函数调用的参数的类型。

示例

#include <bits/stdc++.h>
using namespace std;
int main(){
   bool a[] = { true, false, true, false, true };
   bool b[] = { true, true, false, false, true };
   int ele = 5;
   bool output[ele];
   transform(a, a + ele, b, output, logical_and<bool>());
   cout<<"The result for Logical AND is: \n";
   for (int i = 0; i < ele; i++){
      cout << a[i] << " AND " << b[i] << " is: " <<output[i] << "\n";
   }
   return 0;
}

输出结果

如果我们运行上面的代码,它将生成以下输出-

The result for Logical AND is:
1 AND 1 is: 1
0 AND 1 is: 0
1 AND 0 is: 0
0 AND 0 is: 0
1 AND 1 is: 1