Man Page negate.3



                       Standard C++ Library
             Copyright 1998, 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: 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)  contains  the
     negation of the element in vec1(n).





INTERFACE

     template <class T>
     struct negate : unary_function<T, T> {
      T operator() (const T&) const;
     };





WARNINGS

     If your compiler does not support default  template  parame-
     ters,  then you always need to supply the Allocator template
     argument. For instance, you need to write:

     vector<int, allocator<int> >

     instead of:

     vector<int>

     If your compiler does not support namespaces,  then  you  do
     not need the using declaration for std.





SEE ALSO

     Function_Objects, unary_function