Functor

What is Functor?


1.

A functor, or function object, is a class in C++ with the () operator overloaded. Functors are used a lot in the standard library to do custom comparisons. They're used in place of function pointers because sometimes you need to store a value or remember something (ie. put the functor into a special 'state' for whatever purpose), a functor can do this, a function pointer can't (without messing with global variables).

class over5 { // this class is the functor

bool operator() (int x) {

return x > 5;

}

};

std::list<int> L;

... // put a bunch of ints onto the list

over5 o5;

std::find_if(L.begin(), L.end(), o5);

// o5 will have its overloaded () operator called to check if the element in L is over 5.


84

Random Words:

1. means that the world is in the eye of the beholder; it all depends on how you look at things; all people look at things from a different..
1. weird;out of the ordinary the letters z,q,and x are all uncommon pronounced: zeequix Dude, that chick is waaaaay zqx. See freak, dor..
1. p.p. dampened by water that sprays out of a flushing toilet. named for a maker of automatic-flush toilets that tend to flush while a per..