回调的定义:
在Component中设置为属性的Function.并且通常在组件上发生某些事件时调用.
例如:
如果您希望在用户单击Component componentB时显示一个显示“我被点击”的对话框,您可以编写一个存储为变量的方法来执行此操作:
var mouseDownCallbackFunction = function() { alert("I was clicked!"); };
接下来,您将在组件内部设置此功能,如此…
// Set the Component to display the dialog when the // user presses the mouse down on it. componentB.setMouseDownCallback(mouseDownCallbackFunction);
这将导致mouseDownCallbackFunction在单击组件时在警告框中显示“我被点击”.
解决方法
在C中,这将是一个有效的回调.但是,我不熟悉JavaScript,不知道是不是因为我不确定变量是如何处理它们的内存位置的.
在C/C++中,您可以声明一个void指针:
void aFunction() { do stuff } int main() { void* myCallback = &aFunction; componentB.setMouseDownCallback(myCallback); }
会工作.
然而,尽管我缺乏JavaScript知识,但我确实知道
componentB.setMouseDownCallback(function() { alert("I was clicked!"); }; );
也有效.
编辑在第二句中添加了一句话:“我不那么熟悉”