我在C++中使用函数数组的经验不多.我需要使用一个函数数组,其中数组包含来自不同对象的函数.这里有一些虚拟代码来说明我想要实现的内容.
class base_class
{
public:
virtual int function1(int arg1, int arg2);
virtual int function2(int arg1, int arg2);
};
class derived_class : public base_class
{
public:
int function1(int arg1, int arg2) { /* ... */ };
int function2(int arg1, int arg2) { /* ... */ };
// ...
};
typedef int (*functions) (int arg1, int arg2);
int main()
{
derived_class object1;
derived_class object2;
functions func_instance[4];
func_instance[0] = object1.function1;
func_instance[1] = object1.function2;
func_instance[2] = object2.function1;
func_instance[3] = object2.function2;
// ...
}
Run Code Online (Sandbox Code Playgroud)
我无法让它工作,它抛出以下错误: …