|
VMS Help CXXLSTD, Function Objects, less *Conan The Librarian |
Standard C++ Library
Copyright 1996, Rogue Wave Software, Inc.
NAME
less - Binary function object that returns true if its first
argument is less than its second
SYNOPSIS
#include<functional>
template <class T>
struct less : public binary_function<T, T, bool> ;
DESCRIPTION
less is a binary function object. Its operator() returns true if x
is less than y. You can pass a less 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. less
would be used in that algorithm in the following manner:
vector<int> vec1;
vector<int> vec2;
vector<int> vecResult;
transform(vec1.begin(), vec1.end(),
vec2.begin(),
vecResult.begin(), less<int>());
After this call to transform, vecResult(n) will contain a "1" if
vec1(n) was less than vec2(n) or a "0" if vec1(n) was greater than
or equal to vec2(n).
INTERFACE
template <class T>
struct less : binary_function<T, T, bool> {
typedef typename binary_function<T, T, bool>::second_argument_type
second_argument_type;
typedef typename binary_function<T, T, bool>::first_argument_type
first_argument_type;
typedef typename binary_function<T, T, bool>::result_type
result_type;
bool operator() (const T&, const T&) const;
};
WARNING
If your compiler does not support default template parameters, then
you need to always supply the Allocator template argument. For
instance, you'll have to write :
vector<int, allocator<int> >
instead of
vector<int>
SEE ALSO
binary_function, function objects
STANDARDS CONFORMANCE
ANSI X3J16/ISO WG21 Joint C++ Committee
|
|