Libreria funzionale C ++ - bit_and

Descrizione

È una classe di oggetti funzione AND bit per bit e una classe di oggetti funzione binaria la cui chiamata restituisce il risultato dell'applicazione dell'operazione "e" bit per bit tra i suoi due argomenti (come restituito dall'operatore &).

Dichiarazione

Di seguito è riportata la dichiarazione per std :: bit_and.

template <class T> struct bit_and;

C ++ 11

template <class T> struct bit_and;

Parametri

T - È un tipo di argomenti e un tipo di ritorno della chiamata funzionale.

Valore di ritorno

nessuna

Eccezioni

noexcep - Non genera eccezioni.

Esempio

Nell'esempio seguente viene spiegato lo 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;
}

Compiliamo ed eseguiamo il programma sopra, questo produrrà il seguente risultato:

8 0 8 160 136