我有一类 SFAPin,并且有一种方法:
SFAPin::addListener(void (SFAState::*)(SFAPinEvent&), uint8_t){};
但是当我尝试为这个方法传递另一个类的一个方法时:
void InitialState::lightChange(SFAPinEvent &event){};
...
light.addListener(&lightChange, SFAPinEvent::PIN_CHANGE);
我有:
错误:没有匹配函数调用 'SFAPin::addListener(void (InitialState::*)(SFAPinEvent&), uint8_t)' 注意:候选者是:void SFAPin::addListener(void (SFAState::*)(SFAPinEvent&), uint8_t) Obs:InitialState 扩展了 SFAState,但不起作用
我正在使用 arduino IDE,不支持 C++11 的 lambda
我该如何解决?谢谢