Classes have many, many uses in C++ programs. This Exploration introduces one powerful use of classes to replace functions. This style of programming is especially useful with the standard algorithms.
The Function Call Operator
The first step is to take a look at an unusual “operator,” the
function call operator, which lets an object behave as a function. Overload this operator the same way you would any other. Its name is
operator(). It takes any number of parameters and can have any return type. Listing
44-1 shows another iteration of the
generate_id class
(last seen in Listing
41-5), this time ...