SGI Logo


Category: functors Component type: type


Negate<T> is a function object. Specifically, it is an Adaptable Unary Function. If f is an object of class negate<T> and x is an object of class T, then f(x) returns -x.


Each element in V2 will be the negative (additive inverse) of the corresponding element in V1.
const int N = 1000;
vector<double> V1(N);
vector<double> V2(N);

iota(V1.begin(), V1.end(), 1);

assert(V2.size() >= V1.size());
transform(V1.begin(), V1.end(), V2.begin(),


Defined in the standard header functional, and in the nonstandard backward-compatibility header function.h.

Template parameters

Parameter Description Default
T The function object's argument type and result type.  

Model of

Adaptable Unary Function, Default Constructible

Type requirements

T must be a numeric type; if x is an object of type T, then -x must be defined and must have a return type that is convertible to T. T must be Assignable.

Public base classes

unary_function<T, T>


Member Where defined Description
argument_type Adaptable Unary Function The type of the second argument: T
result_type Adaptable Unary Function The type of the result: T
T operator()(const T& x) Adaptable Unary Function Function call operator. The return value is -x.
negate() Default Constructible The default constructor.

New members

All of negate's members are defined in the Adaptable Unary Function and Default Constructible requirements. Negate does not introduce any new members.


See also

The Function Object overview, Adaptable Unary Function, unary_function, plus, minus, multiplies, divides, modulus

STL Main Page

Contact Us | Site Map | Trademarks | Privacy | Using this site means you accept its Terms of Use
Copyright © 2009 - 2014 Silicon Graphics International. All rights reserved.