Rogue Wave banner
Previous fileTop of documentContentsIndexNext file

logical_and


Function Object

Summary

A binary function object that returns true if both of its arguments are true.

Data Type and Member Function Indexes
(exclusive of constructors and destructors)

None

Synopsis

#include <functional>
template <class T>
struct logical_and : public binary_function<T, T, bool>;

Description

logical_and is a binary function object. Its operator() returns true if both x and y are true. You can pass a logical_and object to any algorithm that requires a binary function. For example, the transform algorithm applies a binary operation to corresponding values in two collections and stores the result of the function. logical_and is used in that algorithm in the following manner:

After this call to transform, vecResult(n) contains a 1 (true) if both vec1(n) and vec2(n) are true or a 0 (false) if either vec1(n) or vec2(n) is false.

Interface

template <class T>
struct logical_and : binary_function<T, T, bool> {
  bool operator() (const T&, 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<bool, allocator<bool> >

instead of:

vector<bool>

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

See Also

binary_function, Function Objects



Previous fileTop of documentContentsIndexNext file
©Copyright 1998, Rogue Wave Software, Inc.
Send mail to report errors or comment on the documentation.
OEM Release, June 1998