使用lambda表达式报错,提示No matching member

使用的编辑器是Xcode
给一个按钮添加touch监听,代码如下:

btn6475->addTouchEventListener(](Ref *ref, TouchEventType type){
if(type == TouchEventType::TOUCH_EVENT_BEGAN)
{
log(“touch!!!”);
}
});

老是提示No matching member function for call to 'addTouchEventListener’错误

如下这句同样使用lambda表达式报错就没有问题,为什么呢?

MenuItemImage::create(“0.png”, “”, ](Ref *ref){log(“100”);});

LZ第一个button是ui::button对象么?如果是的话那touchtype是cocos2d::ui::widget::TouchEventType 估计你是type参数写错了

是的,是ui::button对象
touchType 用的也是cocos2d::ui::widget::TouchEventType

pButton->addTouchEventListener(](Ref* ref,Widget::TouchEventType type){
    switch (type) {
        case cocos2d::ui::Widget::TouchEventType::ENDED:
        {
            //do something
        }
            break;
            
        default:
            break;
    }
});

这个是我的代码,可以运行的。。LZ是不是哪里写错了。。