代码笔记【记录】

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;
}
 

你可能感兴趣的:(代码)