我有一个这样的课程:
class A
{
public:
A();
~A();
bool init();
private:
void LeftCallback(CCObject* sender);
}
在我的init方法中,我尝试使用:
创建一个menu_selectormenu_selector(LeftCallback);
问题是这不起作用。我必须提供类范围,使其以这种方式工作:
menu_selector(A::LeftCallback);
为什么我不得不在这种情况下添加类范围而不是仅使用方法名?
提前致谢。
答案 0 :(得分:2)
基本上,因为语言要求你。
我不确定为什么会这样做,但它确实有助于避免函数和方法指针之间的模糊,甚至是人类阅读代码时的歧义。