logical_not (STL/CLR)
La clase de plantilla describe un functor que, cuando se invoca, devuelve true solo si cualquier argumento prueba como false. Se utiliza especifica un objeto de función en términos del tipo de argumento.
template<typename Arg>
ref class logical_not
{ // wrap operator()
public:
typedef Arg argument_type;
typedef bool result_type;
typedef Microsoft::VisualC::StlClr::UnaryDelegate<
argument_type, result_type>
delegate_type;
logical_not();
logical_not(logical_not<Arg> %right);
result_type operator()(argument_type left);
operator delegate_type^();
};
Parámetros
- Argumento
El tipo de los argumentos.
Funciones miembro
Definición de tipo |
Descripción |
---|---|
argument_type |
El tipo de argumento de functor. |
delegate_type |
El tipo de delegado genérico. |
result_type |
El tipo de resultado de functor. |
Miembro |
Descripción |
---|---|
logical_not |
Construye el functor. |
operador ?? |
Descripción |
---|---|
operator() |
Calcula la función deseada. |
delegate_type^ de operador |
Convierte el functor un delegado. |
Comentarios
La clase de plantilla describe un functor de uno- argumento. Define el operador operator() de miembro para que, cuando el objeto se denomina como función, devuelve true solo si su argumento prueba como false.
También puede pasar el objeto como argumento de la función cuyo tipo es delegate_type^ y se convierte correctamente.
Ejemplo
// cliext_logical_not.cpp
// compile with: /clr
#include <cliext/algorithm>
#include <cliext/functional>
#include <cliext/vector>
typedef cliext::vector<int> Myvector;
int main()
{
Myvector c1;
c1.push_back(4);
c1.push_back(0);
Myvector c3(2, 0);
// display initial contents " 4 0"
for each (int elem in c1)
System::Console::Write(" {0}", elem);
System::Console::WriteLine();
// transform and display
cliext::transform(c1.begin(), c1.begin() + 2,
c3.begin(), cliext::logical_not<int>());
for each (int elem in c3)
System::Console::Write(" {0}", elem);
System::Console::WriteLine();
return (0);
}
Requisitos
cliext <deEncabezado: /funcional>
cliext deEspacio de nombres: