bit_not (Función)

Objeto de función predefinido que realiza la operación de complemento bit a bit (NOT) (operator~unario) sobre su argumento.

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

// specialized transparent functor for operator~
template<> 
   struct bit_not<void> 
   {
      template<class Type>
      auto operator()(Type&& Right) const 
         -> decltype(~std::forward<Type>(Right));
   };

Parámetros

  • Type
    Tipo que admite un operator~ unario.

  • Right
    Operando de la operación de complemento bit a bit. La plantilla no especializada toma un argumento de referencia de valor L de tipo Type. La plantilla especializada realiza el reenvío directo de un argumento de referencia de valor L o valor R del tipo deducido Type.

Valor devuelto

Resultado de ~Right. La plantilla especializada realiza el reenvío directo del resultado, que tiene el tipo devuelto por operator~.

Comentarios

El functor de bit_not está limitado a tipos enteros para los tipos de datos básicos, o a tipos definidos por el usuario que implementan el operator~ binario.

Requisitos

Encabezado: <functional>

Espacio de nombres: std

Vea también

Referencia

<functional>

Lvalues y rvalues

Biblioteca de plantillas estándar