Classes | |
class | std::unary_negate< Predicate > |
One of the negation functors. More... | |
class | std::binary_negate< Predicate > |
One of the negation functors. More... | |
Functions | |
template<class Predicate> | |
unary_negate< Predicate > | std::not1 (const Predicate &pred) |
One of the negation functors. | |
template<class Predicate> | |
binary_negate< Predicate > | std::not2 (const Predicate &pred) |
One of the negation functors. |
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()));
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.
|
One of the negation functors.
Definition at line 329 of file stl_function.h. |
|
One of the negation functors.
Definition at line 355 of file stl_function.h. |