#include <iostream>
#include <functional>
#include <typeinfo>
struct Ex
{
void f(); //member function
std::function<void()> g; //member std::function
void (*h)(); //member pointer to function
};
int main()
{
//no instance of Ex exists
auto my_f = &Ex::f;
std::cout << typeid(my_f).name() << std::endl;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8ZnVuY3Rpb25hbD4KI2luY2x1ZGUgPHR5cGVpbmZvPgoKc3RydWN0IEV4CnsKICAgIHZvaWQgZigpOyAvL21lbWJlciBmdW5jdGlvbgogICAgc3RkOjpmdW5jdGlvbjx2b2lkKCk+IGc7IC8vbWVtYmVyIHN0ZDo6ZnVuY3Rpb24KICAgIHZvaWQgKCpoKSgpOyAvL21lbWJlciBwb2ludGVyIHRvIGZ1bmN0aW9uCn07CgppbnQgbWFpbigpCnsKCS8vbm8gaW5zdGFuY2Ugb2YgRXggZXhpc3RzCglhdXRvIG15X2YgPSAmRXg6OmY7CglzdGQ6OmNvdXQgPDwgdHlwZWlkKG15X2YpLm5hbWUoKSA8PCBzdGQ6OmVuZGw7Cn0K