std::negate<void>
De cppreference.com
< cpp | utility | functional
Definido en el archivo de encabezado <functional> | ||
template<> class negate<void>; | (desde C++14) | |
std::negate<> es una especialización de std::negate con el tipo de parámetro y el tipo de retorno deducidos.
Contenido |
[editar]Tipos miembro
Tipo | Definición |
is_transparent | No especificado. |
[editar]Funciones miembro
operator() | Devuelve su argumento negado. (función miembro pública) |
std::negate<void>::operator()
template<class T > constexprauto operator()( T&& arg )const | ||
Devuelve el resultado de negar arg.
Parámetros
arg | - | El valor a negar. |
Valor de retorno
-std::forward<T>(arg).
[editar]Ejemplo
Ejecuta este código
#include <complex>#include <functional>#include <iostream> int main(){auto complex_negate =std::negate<void>{};// “void” puede omitirseconstexprstd::complex z(4, 2);std::cout<< z <<'\n';std::cout<<-z <<'\n';std::cout<< complex_negate(z)<<'\n';}
Salida:
(4,2) (-4,-2) (-4,-2)