Actionscript 3 在一行中声明或实例化多个对象

Actionscript 3 在一行中声明或实例化多个对象,actionscript-3,flash,Actionscript 3,Flash,简单地说,我想要一种在一行中生成multiply class对象的方法。就像是在C++中 class1 object1,object2,etc; //Make many object from class1 class1 object[x]; //and array of class 但是在as3中如何实现呢?我真的要像这样一个接一个地写吗 var object1:class1=new class1; var object2:class1=new class1; 不幸的是,当您在AS3

简单地说,我想要一种在一行中生成multiply class对象的方法。就像是在C++中
class1 object1,object2,etc; //Make many object from class1

class1 object[x]; //and array of class 
但是在as3中如何实现呢?我真的要像这样一个接一个地写吗

var object1:class1=new class1;

var object2:class1=new class1;

不幸的是,当您在AS3中使用复杂的数据类型实例化变量时,如果希望每个变量都有一个唯一的实例,则必须单独实例化它们;但是,您可以在一行上声明变量。下面是好的,我只是以MovieClip为例:

var mc1:MovieClip, mc2:MovieClip, mc3:MovieClip;
mc1 = new MovieClip();
mc2 = new MovieClip();
mc3 = new MovieClip();
正如Cherniv很好地指出的,您可以在一行上实例化多个复杂对象;但是,如果这样做,在该行上实例化的每个变量都将引用该复杂对象的同一实例。如果这对你不起作用,你必须按照我上面指出的去做

var mc1:MovieClip, mc2:MovieClip, mc3:MovieClip;
mc1 = mc2 = mc3 = new MovieClip();

对于“类的数组”,请看
Vector
:对于“基元类型”,您可以在一行中“实例化”,如
a=b=c=5
;)+1@Cherniv:谢谢你指出这一点,我只是没有提及,因为海报关注的是复杂的物体,但这是一个很好的信息。我将修改措辞以确保更清晰。我认为您需要指出,在一行中实例化复杂类型没有限制,但在这种情况下,它们都将引用相同的类型object@Cherniv,编辑了我的答案,以包括您进一步指出的细节。再次感谢。