Functions and Function Objects
Let's take a look at the first two types of callables in C++.
We'll cover the following
Functions
Functions are the simplest callables. They can have - apart from static variables - no state. Because the definition of a function is often widely separated from its use or even in a different translation unit, the compiler has fewer opportunities to optimize the resulting code.