当前位置:  开发笔记 > 编程语言 > 正文

你能在AS3函数中使用"ByRef"参数吗?

如何解决《你能在AS3函数中使用"ByRef"参数吗?》经验,为你挑选了2个好方法。

知道如何从ActionScript 3中的函数返回多个变量吗?

像VB.NET,你可以修改输入参数的变量(ByRef参数)吗?

Sub do (ByRef inout As Integer)
 inout *= 5;
End Sub

Dim num As Integer = 10
Debug.WriteLine (num)        '10
do (num)
Debug.WriteLine (num)        '50

除了返回关联数组之外的任何东西?

return {a:"string 1", b:"string 2"}

dkretz.. 15

引用谷歌来源:

在ActionScript 3.0中,所有参数都通过引用传递,因为所有值都存储为对象.但是,属于原始数据类型的对象(包括Boolean,Number,int,uint和String)具有特殊的运算符,使它们的行为就像它们按值传递一样.

这导致我查找规范来源.



1> dkretz..:

引用谷歌来源:

在ActionScript 3.0中,所有参数都通过引用传递,因为所有值都存储为对象.但是,属于原始数据类型的对象(包括Boolean,Number,int,uint和String)具有特殊的运算符,使它们的行为就像它们按值传递一样.

这导致我查找规范来源.



2> Robinicks..:

似乎字符串,整数,单位,布尔值都是通过值传递的. 我在Flash中尝试了这个小片段,结果是否定的:

function func(a:String){
    a="newVal";
}

var b:String = "old";

trace(b)    //  old
func(b);
trace(b)    //  old

那么...... String也是列入黑名单的数据类型吗?布尔也呢?我的意思是什么方式告诉哪些类型通过引用传递?

推荐阅读
农大军乐团_697
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有