AS3中如何将数值参数按引用传递?

diffmaker 2010-08-07 12:30:08
写函数时,我怎么将数值按引用传递?类似于C#中的ref?比如我在C#中交换两个整数,可以这样写
private void Swap(ref int a, ref int b)
{
int c = a;
a = b;
b = c;
}

类似的功能,在AS3中如何写呢?
...全文
458 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
leemiki 2010-08-08
  • 打赏
  • 举报
回复
Flex似乎没有引用传递这个说法!!!只有值传递....

Flex和java一样都是运行在虚拟机上,在数据传递的时候,虚拟机做的事情是把一个值copy后赋给另一个变量,前后两个变量没有任何关系!
就算是引用型变量的传递也是这样,看起来改变一方会影响到另一方,但是虚拟机做的事情只是把这个变量的内存地址copy给另一个变量,从而使得两个变量指向的是内存中的同一块区域,还是一种值传递
diffmaker 2010-08-08
  • 打赏
  • 举报
回复
Thanks.通过变量的作用域是能够实现,但是不是我想要的,可能确实不能将数值按引用传递吧。
leemiki 2010-08-08
  • 打赏
  • 举报
回复
交换两个整数只是简单数据类型之间的值传递,写法和你在C#中类似
提供一份测试代码
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="init()">
<mx:Script>
<![CDATA[
import mx.controls.Alert;
private var a:int=1;
private var b:int=2;

private function init():void{
changeValue(a,b);
}

private function changeValue(a:int,b:int):void{
var c:int = a;
a = b;
b = c;
Alert.show("a:"+a+" b:"+b);
}
]]>
</mx:Script>
</mx:Application>
diffmaker 2010-08-07
  • 打赏
  • 举报
回复
没有人研究过?

4,328

社区成员

发帖
与我相关
我的任务
社区描述
多媒体/设计 Flex
社区管理员
  • Flex
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧