Function Classes and Objects
- Overload operator ()
- Any parameters suitable for functions may be used
- Any return value suitable for functions may be used
- Class may have other methods and/or data -- "smart" functions
- Example:
class MakeUpperCase
{
public:
void operator () (char& c) const // operator name
{
c = toupper(c);
}
} ;