10.14 Overloading the Function Call Operator ()
Overloading the function call operator ()
is powerful, because functions can take an arbitrary number of comma-separated parameters. In a customized String
class, for example, you could overload this operator to select a substring from a String
—the operator’s two integer parameters could specify the start location and the length of the substring to be selected. The operator()
function could check for such errors as a start location out of range or a negative substring length.
The overloaded function call operator must be a non-static
member function and could be defined with the first line:
String String::operator()(size_t index, size_t length) const
In this case, it should be a const
member ...
Get C++ How to Program, 10/e now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.