Standard C++ Library
Copyright 1998, Rogue Wave Software, Inc.
NAME
modulus
- Returns the remainder obtained by dividing the first
argument by the second argument.
SYNOPSIS
#include<functional>
template <class T>
struct modulus : public binary_function<T, T, T> ;
DESCRIPTION
modulus is a binary function object. Its operator() returns
the remainder resulting from x divided by y. You can pass a
modulus object to any algorithm that requires a binary func-
tion. For example, the transform algorithm applies a binary
operation to corresponding values in two collections and
stores the result. modulus 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(), modulus<int>());
After this call to transform, vecResult(n) contains the
remainder of vec1(n) divided by vec2(n).
INTERFACE
template <class T>
struct modulus : binary_function<T, T, T> {
T operator() (const T&, const T&) const;
};
WARNINGS
If your compiler does not support default template parame-
ters, then you always need to supply the Allocator template
argument. For instance, you need 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
binary_function, Function_Objects