logical_not(3C++)
Standard C++ Library
Copyright 1998, Rogue Wave Software, Inc.
NAME
logical_not
- A 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> {
bool operator() (const T&) const;
};
WARNINGS
If your compiler does not support default template parameters, you always need to supply the Allocator template argument. For instance, you have 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
Rogue Wave Software — Last change: 02 Apr 1998