From the course: C++ Templates and the STL

Unlock this course with a free trial

Join today to access over 22,400 courses taught by industry experts.

About functors

About functors

- [Instructor] A functor is simply a class with an operator overload for the function called operator. We've talked about this elsewhere, so here's a quick overview for the purposes of this chapter. Here I have a working copy of functor.cpp from chapter five of the exercise files. You'll notice this class definition here, it's a template class with a template type of T. It keeps a multiplier, and you can set or get the multiplier. There's a constructor that takes the multiplier, and then there's a functor, which is this operator overload for the function called operator, which returns the multiplier times the operad passed to the functor. So very simple, very straight forward. But it gets to carry forward information, carry forward data by virtue of the fact that it's a class and not a function. So here we have an instance of this class of type int, it's called X we construct it with a nine for the multiplier and then we change it later on to a seven multiplier, and when I build and…

Contents