std::negate<void>
来自 cppreference.com
< cpp | utility | functional
定义在头文件 <functional> 中 |
||
template<> class negate<void>; |
(自 C++14 起) | |
std::negate<> 是 std::negate 的一个特化,参数和返回值类型被推断。
内容 |
[编辑] 成员类型
类型 | 定义 |
is_transparent
|
未指定 |
[编辑] 成员函数
operator() |
返回其取反后的参数 (公有成员函数) |
std::negate<void>::operator()
template< class T > constexpr auto operator()( T&& arg ) const |
||
返回取反 arg 的结果。
参数
arg | - | 要取反的值 |
返回值
-std::forward<T>(arg).
[编辑] 示例
运行此代码
#include <complex> #include <functional> #include <iostream> int main() { auto complex_negate = std::negate<void>{}; // “void” can be omitted constexpr std::complex z(4, 2); std::cout << z << '\n'; std::cout << -z << '\n'; std::cout << complex_negate(z) << '\n'; }
输出
(4,2) (-4,-2) (-4,-2)