class A{};
typedef int (A::*DEFINDE_P)(int);
class AA : public A{
public:
AA(){}
int haha(){
printf("fuck\n");
}
int printfA(int a){
printf("AA\n");
return 0;
}
};
class AB : public A{
public:
AB(){}
int printfB(int a){
printf("AB\n");
return 0;
}
};
int main(int argc, char* argv[])
{
DEFINDE_P bb = (DEFINDE_P)&AA::printfA;
A* tst = new AB();
(tst->*(bb))(1);
return 0;
}