22.1 Introduction

To fully understand a predicate functor requires an understanding of several other concepts not unique to C++. Predicate functors incorporate the concepts of function pointers, call-backs, functions with "state", and C++ operators. Fortunately, most programmers are already familiar with these concepts from other languages, and the transition to predicate functors is often more syntactic candy than revolutionary.