/sys$common/syshlp/helplib.hlb CXXLSTD, Function Objects, negate *Conan The Librarian |
Standard C++ Library Copyright 1996, Rogue Wave Software, Inc. NAME negate - Unary function object that returns the negation of its argument. SYNOPSIS #include <functional> template <class T> struct negate : public unary_function<T, T>; DESCRIPTION negate is a unary function object. Its operator() returns the negation of its argument, i.e., true if its argument is false, or false if its argument is true. You can pass a negate object to any algorithm that requires a unary function. For example, the transform algorithm applies a unary operation to the values in a collection and stores the result. negate could be used in that algorithm in the following manner: vector<int> vec1; vector<int> vecResult; transform(vec1.begin(), vec1.end(), vecResult.begin(), negate<int>()); After this call to transform, vecResult(n) will contain the negation of the element in vec1(n). INTERFACE template <class T> struct negate : unary_function<T, T> { typedef typename unary_function<T,T>::argument_type argument_type; typedef typename unary_function<T,T>::result_type result_type; T operator() (const T&) const; }; WARNING If your compiler does not support default template parameters, then you need to always supply the Allocator template argument. For instance, you will need to write : vector<int, allocator<int> > instead of : vector<int> SEE ALSO function objects, unary_function STANDARDS CONFORMANCE ANSI X3J16/ISO WG21 Joint C++ Committee
|