我正在尝试创建一个指向类非静态函数的指针,以由多个对象调用它。
示例类:
class A
{
public:
int getNumber() { return 5; }
};
我用相同的签名创建了指向类函数的指针:
int (A::*funcPtr)();
此后,我已将其初始化为:
funcPtr = A::getFive;
[当我尝试编译时,出现以下错误:
无效使用非静态成员函数'int A :: getNumber()'
我的指针声明有什么问题?我试图制作函数const
并更改返回类型,但对我没有帮助。
以下将起作用:
funcPtr = &A::getNumber;