静态成员函数才能做钩子???
做回调注册时,一般使用静态成员函数,否则会报错,就算报错也还需要把this指针传过去
#include <iostream> using namespace std; typedef void(*FUNC)(int a); void regfunc(FUNC pfunc) { pfunc(10); } class USB { public: void func1(int a) { cout <<"func1" <<a << endl; } static void func2(int a) { cout << "func2" << a << endl; } void play() { //regfunc(func1); //E0167 "void (USB::*)(int a)" 类型的实参与 "FUNC" 类型的形参不兼容 regfunc(func2); } };

浙公网安备 33010602011771号