DEV Community

loading...

Discussion on: C++ Pointer to Function

Collapse
aakatev profile image
Artem Author

Learned a lot from this comment. Thanks!!

Collapse
pgradot profile image
Pierre Gradot

Glad it helped : )

There is another use-case for std::function: it can be used to hold a "function object" (also called a "functor":

#include <iostream>
#include <functional>

using Function = std::function<void(void)>;

struct Callable {
    void operator()() {
        std::cout << "callable::operator()()" << '\n';
    }
};

int main() {
    Callable callable;
    Function f = callable;
    f();
}
Enter fullscreen mode Exit fullscreen mode