stlab.adobe.com Adobe Systems Incorporated

logical_or

functors.gif
type.gif
Category: functors Component type: type

Description

Logical_or<T> is a functors; specifically, it is an AdaptableBinaryPredicate, which means it is a function object that tests the truth or falsehood of some condition. If f is an object of class logical_and<T> and x and y are objects of class T (where T is convertible to bool) then f(x,y) returns true if and only if either x or y is true. [1]

Example

Finds the first instance of either ' ' or '
' in a string.

char str[MAXLEN];
...
const char* wptr = find_if(str, str + MAXLEN,
                           compose2(logical_or<bool>(),
                                    bind2nd(equal_to<char>(), ' '),
                                    bind2nd(equal_to<char>(), '\n')));
assert(wptr == str + MAXLEN || *wptr == ' ' || *wptr == '\n');  

Definition

Defined in the standard header functional, and in the nonstandard backward-compatibility header function.h.

Template parameters

Parameter Description Default
T The type of logical_or's arguments  

Model of

AdaptableBinaryPredicate, DefaultConstructible

Type requirements

T must be convertible to bool.

Public base classes

binary_function<T, T, bool>

Members

Member Where defined Description
first_argument_type AdaptableBinaryFunction The type of the first argument: T
second_argument_type AdaptableBinaryFunction The type of the second argument: T
result_type AdaptableBinaryFunction The type of the result: bool
bool operator()(const T& x, const T& y) const BinaryFunction Function call operator. The return value is x || y.
logical_or() DefaultConstructible The default constructor.

New members

All of logical_or's members are defined in the AdaptableBinaryFunction and DefaultConstructible requirements. Logical_or does not introduce any new members.

Notes

[1] logical_and and logical_or are not very useful by themselves. They are mainly useful because, when combined with the function object adaptor binary_compose, they perform logical operations on other function objects.

See also

The functors, logical_and, logical_not.

Copyright © 2006-2007 Adobe Systems Incorporated.

Use of this website signifies your agreement to the Terms of Use and Online Privacy Policy.

Search powered by Google