Silicon Graphics, Inc.


Category: functors Component type: type


Modulus<T> is a function object. Specifically, it is an Adaptable Binary Function. If f is an object of class modulus<T> and x and y are objects of class T, then f(x,y) returns x%y.


Each element in V3 will be the modulus of the corresponding elements in V1 and V2
const int N = 1000;
vector<double> V1(N);
vector<double> V2(N);
vector<double> V3(N);

iota(V1.begin(), V1.end(), 1);
fill(V2.begin(), V2.end(), 75);

assert(V2.size() >= V1.size() && V3.size() >= V1.size());
transform(V1.begin(), V1.end(), V2.begin(), V3.begin(),


Defined in function.h

Template parameters

Parameter Description Default
T The function object's argument type and result type.  

Model of

Adaptable Binary Function, Default Constructible

Type requirements

T must be an integral type; if x and y are objects of type T, then x%y must be defined and must have a return type that is convertible to T. T must be Assignable.

Public base classes

binary_function<T, T, T>


Member Where defined Description
first_argument_type Adaptable Binary Function The type of the first argument: T
second_argument_type Adaptable Binary Function The type of the second argument: T
result_type Adaptable Binary Function The type of the result: T
T operator()(const T& x, const T& y) Adaptable Binary Function Function call operator. The return value is x % y.
modulus() Default Constructible The default constructor.

New members

All of modulus's members are defined in the Adaptable Binary Function and Default Constructible requirements. Modulus does not introduce any new members.


See also

The Function Object overview, Adaptable Binary Function, binary_function, plus, minus, multiplies, divides, negate
[Silicon Surf] [STL Home]
Copyright © 1996 Silicon Graphics, Inc. All Rights Reserved. TrademarkInformation