typedef void (*Function)(int param); struct A { Function function; };
class B { public: void functionX(int param); };
void RegisterX(B* b) { A a; a.function = b->functionX; //ERROR }