std::negate<void>
De cppreference.com
<tbody>
</tbody>
| 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.
Tipos miembro
| Tipo | Definición |
is_transparent
|
No especificado. |
Funciones miembro
| Devuelve su argumento negado. (función miembro pública) |
std::negate<void>::operator()
<tbody> </tbody> template< class T > constexpr auto operator()( T&& arg ) const -> decltype(-std::forward<T>(arg)); |
||
Devuelve el resultado de negar arg.
Parámetros
| arg | - | El valor a negar. |
Valor de retorno
-std::forward<T>(arg).
Ejemplo
Ejecuta este código
#include <complex>
#include <functional>
#include <iostream>
int main()
{
auto complex_negate = std::negate<void>{}; // “void” puede omitirse
constexpr std::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)