bit_and es una función incorporada en C++ que se usa para devolver los valores después de aplicar bitwise_and en sus argumentos (como los devuelve el operador &).
template struct bit_and { T operator() (const T& a, const T& b) const {return a&b;} typedef T type of first_argument; typedef T type of second_argument; typedef T result_type; };
T es el tipo de todos los argumentos.
Nota:
- Los objetos de esta clase se pueden usar en algoritmos estándar como transformar o acumular.
- Las funciones miembro (‘operador()’) devuelven bitwise_and de sus argumentos.
Debemos incluir la biblioteca ‘funcional’ y ‘algoritmo’ para usar bit_and y transform respectivamente, de lo contrario no funcionarán.
A continuación se muestran los programas para mostrar el funcionamiento de la función bit_and :
Programa-1:
// C++ program to show the // functionality of bit_and #include <algorithm> // transform #include <functional> // bit_and #include <iostream> // cout #include <iterator> // end using namespace std; int main() { // declaring the values int xyz[] = { 500, 600, 300, 800, 200 }; int abc[] = { 0xf, 0xf, 0xf, 255, 255 }; int n = 5; // defining results int results[n]; // transform is used to apply // bitwise_and on the arguments transform(xyz, end(xyz), abc, results, bit_and<int>()); // printing the resulting array cout << "Results:"; for (const int& x : results) cout << ' ' << x; return 0; }
Producción:
Results: 4 8 12 32 200
Programa-2:
// C++ program to show the // functionality of bit_and #include <algorithm> // transform #include <functional> // bit_and #include <iostream> // cout #include <iterator> // end using namespace std; int main() { // declaring the values int xyz[] = { 0, 1100 }; int abc[] = { 0xf, 0xf }; // defining results int results[2]; // transform is used to apply // bitwise_and on the arguments transform(xyz, end(xyz), abc, results, bit_and<int>()); // printing the resulting array cout << "Results:"; for (const int& x : results) cout << ' ' << x; return 0; }
Producción:
Results: 0 12
Publicación traducida automáticamente
Artículo escrito por shubham tyagi 4 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA