Espacios de nombres
Variantes
Acciones

std::negate<void>

De cppreference.com
< cpp‎ | utility‎ | functional
 
 
Biblioteca de servicios
 
Objetos función
Envoltorios de funciones
(C++11)
(C++11)
Aplicación parcial de funciones
(C++20)
(C++11)
Invocación de funciones
(C++17)(C++23)
Objeto función identidad
(C++20)
Envoltorios de referencias
(C++11)(C++11)
Envoltorios de operador transparentes
(C++14)
(C++14)
negate<>
(C++14)
(C++14)
(C++14)
(C++14)
(C++14)
(C++14)
(C++14)
Negadores
(C++17)
Buscadores
Vinculadores y adaptadores antiguos
(hasta C++17)
(hasta C++17)
(hasta C++17)
(hasta C++17)
(hasta C++17)(hasta C++17)(hasta C++17)(hasta C++17)
(hasta C++20)
(hasta C++20)
(hasta C++17)(hasta C++17)
(hasta C++17)(hasta C++17)

(hasta C++17)
(hasta C++17)(hasta C++17)(hasta C++17)(hasta C++17)
(hasta C++20)
(hasta C++20)
 
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_transparentNo 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

    -> 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).

[editar]Ejemplo

#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)
close