I\'ve got a library that I need to use that defines the following:
typedef void CallbackFunction(const int& i);
and has a function to regis
Lamda's are just syntactic sugar for functors.
Functors are objects that act like functions.
A function pointer is not the same type of thing. In general you can not use functors where you need a function pointer.
On the other hand it is easy to wrap a function to become a functor.
Function pointers are generally used by C libraries. As C++ libraries will use an interface to achieve the same affect. Thus you can see why it is hard to pass functors where a function pointer is requried (the C code has no way to understand how to use the functor).