我有这样一个类:
class A
{
public:
A();
~A();
bool init();
private:
void LeftCallback(CCObject* sender);
}
在我的初始化方法中,我尝试使用以下方法创建一个 menu_selector:
menu_selector(LeftCallback);
问题是这行不通。我必须提供类范围以使其以这种方式工作:
menu_selector(A::LeftCallback);
为什么我在这种情况下被迫添加类作用域而不是仅仅使用方法名称?
提前致谢。
最佳答案
基本上,因为语言要求您这样做。
我不太清楚为什么要这样决定,但它确实有助于避免函数和方法指针之间的歧义,甚至对于阅读您的代码的人来说也是如此。
关于c++ - 为什么在使用 menu_selector 时是 "Class::method"而不仅仅是 "method"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19138935/