Negators


Compounds

class  binary_negate
 One of the negation functors@endlink. More...

class  unary_negate
 One of the negation functors@endlink. More...


Functions

template<class _Predicate> unary_negate< _Predicate > not1 (const _Predicate &__pred)
 One of the negation functors@endlink.

template<class _Predicate> binary_negate< _Predicate > not2 (const _Predicate &__pred)
 One of the negation functors@endlink.


Detailed Description

The functions not1 and not2 each take a predicate functor and return an instance of unary_negate or binary_negate, respectively. These classes are functors whose operator() performs the stored predicate function and then returns the negation of the result.

For example, given a vector of integers and a trivial predicate,

  struct IntGreaterThanThree
    : public std::unary_function<int, bool>
  {
      bool operator() (int x) { return x > 3; }
  };
  
  std::find_if (v.begin(), v.end(), not1(IntGreaterThanThree()));
  
The call to find_if will locate the first index (i) of v for which "!(v[i] > 3)" is true.

The not1/unary_negate combination works on predicates taking a single argument. The not2/binary_negate combination works on predicates which take two arguments.


Function Documentation

template<class _Predicate>
unary_negate<_Predicate> not1 const _Predicate &    __pred [inline]
 

One of the negation functors@endlink.

Definition at line 286 of file stl_function.h.

template<class _Predicate>
binary_negate<_Predicate> not2 const _Predicate &    __pred [inline]
 

One of the negation functors@endlink.

Definition at line 311 of file stl_function.h.


Generated on Thu Nov 21 03:13:20 2002 for libstdc++-v3 Source by doxygen1.2.18-20021030