std::negate - cppreference.com (original) (raw)
| | | | | ------------------------------- | | ------------- | | template<> class negate<void>; | | (since C++14) |
std::negate<> is a specialization of std::negate with parameter and return type deduced.
Contents
[edit] Member types
[edit] Member functions
| | returns its negated argument (public member function) | | -------------------------------------------------------- |
std::negate::operator()
| template< class T > constexpr auto operator()( T&& arg ) const -> decltype(-std::forward<T>(arg)); | | | | -------------------------------------------------------------------------------------------------------------------------- | | |
Returns the result of negating arg.
Parameters
Return value
-std::forward<T>(arg).
[edit] Example
#include #include #include int main() { auto complex_negate = std::negate{}; // “void” can be omitted constexpr std::complex z(4, 2); std::cout << z << '\n'; std::cout << -z << '\n'; std::cout << complex_negate(z) << '\n'; }
Output: