The apply operator, written operator(), defines how an object responds to function-call syntax. A class that implements it becomes a functor, so an instance can be called like a function. section 4.6
Maximum as a callable object
Maximum<int> f; lets the program call f(v). The operator() implementation scans the vector and returns its largest value. This named functor communicates intent, but a lambda can define the same behavior directly at the call site, avoiding a separate type and instantiation. section 4.6
