C++ class 函数指针
C++ class function pointer
我有一个 C++ 函数指针请求。以下是我需要的样本:
在 API 文件中:
class MyClass {
public:
void function1();
void function2();
void function3();
void function4();
};
在主文件中:
MyClass globalglass;
void global_function_call(???)// <---- how to do declaration of argument???
{
//Do *function
}
int main()
{
global_function_call(&globalglass.function1()); // <---- pseudocode, I need to use global class
global_function_call(&globalglass.function2());
global_function_call(&globalglass.function3());
global_function_call(&globalglass.function4());
return 1;
}
我不知道要申报...
要执行您要求的操作,您可以使用指向成员的方法,例如:
MyClass globalglass;
void global_function_call(void (MyClass::*method)())
{
(globalglass.*method)();
}
int main()
{
global_function_call(&MyClass::function1);
global_function_call(&MyClass::function2);
global_function_call(&MyClass::function3);
global_function_call(&MyClass::function4);
return 1;
}
我有一个 C++ 函数指针请求。以下是我需要的样本:
在 API 文件中:
class MyClass {
public:
void function1();
void function2();
void function3();
void function4();
};
在主文件中:
MyClass globalglass;
void global_function_call(???)// <---- how to do declaration of argument???
{
//Do *function
}
int main()
{
global_function_call(&globalglass.function1()); // <---- pseudocode, I need to use global class
global_function_call(&globalglass.function2());
global_function_call(&globalglass.function3());
global_function_call(&globalglass.function4());
return 1;
}
我不知道要申报...
要执行您要求的操作,您可以使用指向成员的方法,例如:
MyClass globalglass;
void global_function_call(void (MyClass::*method)())
{
(globalglass.*method)();
}
int main()
{
global_function_call(&MyClass::function1);
global_function_call(&MyClass::function2);
global_function_call(&MyClass::function3);
global_function_call(&MyClass::function4);
return 1;
}