C++ Functional Library - bit_and


Advertisements

Description

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

Declaration

Following is the declaration for std::bit_and.

template <class T> struct bit_and;

C++11

template <class T> struct bit_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::bit_and.

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

int main () {
   int values[] = {1000,2000,3000,4000,5000};
   int masks[] = {0xf,0xf,0xf,255,255};
   int results[5];

   std::transform (values, std::end(values), masks, results, std::bit_and<int>());

   std::cout << "results:";
   for (const int& x: results)
      std::cout << ' ' << x;
   std::cout << '\n';

   return 0;
}

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

8 0 8 160 136    
functional.htm
Advertisements