United States    
COMPAQ STORE | PRODUCTS | SERVICES | SUPPORT
| CONTACT US | SEARCH
C++
logical_not (3C++std) - Tru64 UNIX
Standard C++ Library
Copyright 1996, Rogue Wave Software, Inc.

NAME

  logical_not  - Unary function object that returns true if its argument is
  false.

SYNOPSIS

  #include <functional>

  template <class T>
  struct logical_not : unary_function<T, bool> ;

DESCRIPTION

  logical_not is a unary function object.  Its operator() returns true if its
  argument is false.  You can pass a logical_not object to any algorithm that
  requires a unary function.  For example, the replace_if algorithm replaces
  an element with another value if the result of a unary operation is true.
  logical_not is used in that algorithm in the following manner:

  vector<int> vec1;
  void replace_if(vec1.begin(), vec1.end(),
                  logical_not<int>(),1);

  This call to replace_if replaces all zeros in the vec1 with "1".

INTERFACE

  template <class T>
  struct logical_not : unary_function<T, bool> {
   typedef typename unary_function<T, bool>::argument_type
                                             argument_type;
   typedef typename unary_function<T, bool>::result_type result_type;
   bool operator() (const T&) const;
  };

WARNING

  If your compiler does not support default template parameters, you will
  need to always supply the Allocator template argument.  For instance, you
  will have 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
  

1.800.AT.COMPAQ

privacy and legal statement