Condividi tramite


Funzione bit_and

Un oggetto funzione predefinito che esegue l'operazione di AND bit a bit (operator& binario) sui suoi argomenti.

template<class Type = void>
    struct bit_and : public binary_function<Type, Type, Type> {
        Type operator()(
            const Type& Left, 
            const Type& Right
        )   const;
    };

// specialized transparent functor for operator&
template<>
   struct bit_and<void>
   {
      template<class Type1, class Type2>
      auto operator()(Type1&& Left, Type2&& Right) const
         -> decltype(std::forward<Type1>(Left)
            & std::forward<Type2>(Right));
   };

Parametri

  • Type, Type1, Type2
    Qualsiasi tipo che supporti operator& che accetta gli operandi dei tipi specificati di derivati.

  • Left
    L'operando a sinistra di un'operazione di AND bit a bit. Il modello non specializzato accetta un argomento di riferimento a lvalue di tipo Type. Il modello specializzato perfeziona l'inoltro degli argomenti di riferimento a rvalue e lvalue di tipo derivato Type1.

  • Right
    L'operando a destra di un'operazione di AND bit a bit. Il modello non specializzato accetta un argomento di riferimento a lvalue di tipo Type. Il modello specializzato perfeziona l'inoltro degli argomenti di riferimento a rvalue e lvalue di tipo derivato Type2.

Valore restituito

Il risultato di Left & Right. Il modello specializzato perfeziona l'inoltro del risultato, il cui tipo è restituito da operator&.

Note

La funzione bit_and è limitata ai tipi integrali per i tipi di dati di base, o ai tipi definiti dall'utente che implementano operator& binario.

Requisiti

Intestazione: <funzionale>

Spazio dei nomi: std

Vedere anche

Riferimenti

<functional>

Elementi Lvalue e Rvalue

Libreria di modelli standard