如何实现在callback中加入类的function;
比如一个界面的button,点击之后,需要调用某个类的function;这个时候不论你是再这个class中直接加这个button,还是再UI的管理类里面加这个button,然后加相关类的function作为callback都不行;因为this无法被正确识别;
如果处理这样的情况呢?
中间再加一个一般的callback函数就可以了;
我以后者作为範例:UI管理类,功能类;
这里我们加一个callback函数作为中转的function就可以做到了;
比如:
定义:
Class UI{
add_button();
add_button_callback();
}
Class SomeClass
{
funcForButton();
}
实例化:
UI ui_instance;
SomeClass someClass_instance;
最后邦callback:
错误情况:
ui_instance.add_button_callback(someClass.funcFoButton);
正确做法:
step1:定义一个callback作为中转站:
function tmp_callback()
{
someClass.funcForButton();
}
setp2:绑定callback;
ui_instance.add_button_callback(tmp_callback);