Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flash 将变量作为引用传递给函数_Flash_Actionscript_Reference_Actionscript 2 - Fatal编程技术网

Flash 将变量作为引用传递给函数

Flash 将变量作为引用传递给函数,flash,actionscript,reference,actionscript-2,Flash,Actionscript,Reference,Actionscript 2,我很难将变量作为引用传递给函数。下面是我的代码的一部分,它是麻烦制造者: onMouseDown = function ():Void { mouseListener(openCategory, [control[current]]); }; function mouseListener(callback:Function, callbackParams:Array):Void { for (var index in categories) { var

我很难将变量作为引用传递给函数。下面是我的代码的一部分,它是麻烦制造者:

onMouseDown = function ():Void
{
    mouseListener(openCategory, [control[current]]);
};

function mouseListener(callback:Function, callbackParams:Array):Void
{
    for (var index in categories)
    {
        var category:MovieClip = categories[index];
        if (category.hitTest(root._xmouse, root._ymouse))
        {
                control[current] = category;
                callback.apply(null, callbackParams);
        }
    }
}
现在我想做的是,存储在
callback
中的函数接收对
control[current]
的引用,或者至少是它的最新值。实际发生的是
control[current]
的值被传递给
mouseListener


如何使此功能正常工作?

AS中的原语从不通过引用传递,您需要将其装箱为复杂类型并传递装箱值-这些值始终通过引用传递。在您的情况下,传递整个
控件
,不管它是什么,然后在
回调中读取
控件[当前]