[2] Random number generators are a very subtle subject: a good random number generator must satisfy many statistical properties beyond uniform distribution. See section 3.4 of Knuth for a discussion of what it means for a sequence to be random, and section 3.2 for several algorithms that may be used to write random number generators. (D. E. Knuth, The Art of Computer Programming. Volume 2: Seminumerical Algorithms , third edition. Addison-Wesley, 1998.)
Predefined function objects
Category: functors
Component type: type
Description
Plus is a function object. Specifically, it is an Adaptable Binary Function. If f is an object of class plus and x and y are objects of class T , then f(x,y) returns x+y .
Example
Each element in V3 will be the sum of the corresponding elements in V1 and V2
const int N = 1000;
vector V1(N);
vector V2(N);
vector 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(), plus());
Definition
Defined in the standard header functional, and in the nonstandard backward-compatibility header function.h.
Template parameters
Parameter |
Description |
T |
The function object's argument type and result type. |
Model of
Adaptable Binary Function, Default Constructible
Type requirements
T must be a numeric 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
Members
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 . |
plus() |
Default Constructible |
The default constructor. |
New members
All of plus 's members are defined in the Adaptable Binary Function and Default Constructible requirements. Plus does not introduce any new members.
Notes
See also
The Function Object overview, Adaptable Binary Function, binary_function , minus , multiplies , divides , modulus , negate
Category: functors
Component type: type
Description
Minus is a function object. Specifically, it is an Adaptable Binary Function. If f is an object of class minus and x and y are objects of class T , then f(x,y) returns x-y .
Example
Each element in V3 will be the difference of the corresponding elements in V1 and V2
const int N = 1000;
vector V1(N);
vector V2(N);
vector 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(), minus());
Definition
Defined in the standard header functional, and in the nonstandard backward-compatibility header function.h.
Template parameters
Parameter |
Description |
T |
The function object's argument type and result type. |
Model of
Adaptable Binary Function, Default Constructible
Type requirements
T must be a numeric 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
Members
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 . |
minus() |
Default Constructible |
The default constructor. |
New members
All of minus 's members are defined in the Adaptable Binary Function and Default Constructible requirements. Minus does not introduce any new members.
See also
The Function Object overview, Adaptable Binary Function, binary_function , plus , multiplies , divides , modulus , negate
Category: functors
Component type: type
Description
Multiplies [1] is a function object. Specifically, it is an Adaptable Binary Function. If f is an object of class multiplies and x and y are objects of class , then f(x,y) returns x*y .
Example
Each element in V3 will be the product of the corresponding elements in V1 and V2
const int N = 1000;
vector V1(N);
vector V2(N);
vector 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(), multiplies());
Читать дальше