通过引用在actionscript中不工作

问题描述:

我将对象传递给类并在对象中进行一些更改,但实际对象保持不变。通过引用在actionscript中不工作

例如:

public class Xclass 
{ 
    public var counter:int=1; 
} 

private function mymethod(x:Xclass):void 
{ 
    x.counter = 10; 
} 

之后来到柜台的这种方法的价值出来仍然没有1 10.

有没有在我的代码任何问题。或者是否有任何其他方式通过引用传递对象。

+0

我一直在使用AS3一年,我不知道这可能发生。 – Panzercrisis 2013-03-15 12:55:42

+5

还有其他问题,因为这应该是最确定的。自己尝试:https://gist.github.com/creynders/5169757 – Creynders 2013-03-15 13:06:05

+0

发布更多的代码,你如何初始化你传递给输出点的变量。 – Vesper 2013-03-15 13:59:29

它在AS3做工精细,拿在这段代码波纹管一看:

主类:

package 
{ 
    import flash.display.Sprite; 

    public class TesteCake extends Sprite 
    { 
     public function TesteCake() 
     { 
      var xclass:XClass = new XClass(); 
      trace(xclass.getCounter()); 


      changeCounterXClass(xclass); 
      trace(xclass.getCounter()); 
     } 

     private function changeCounterXClass(xclass:XClass):void{ 
      xclass.setCounter(10); 
     } 
    } 

} 

这是XClass.as(这个类是在其他。至于文件)

package 
    { 
     public final class XClass 
     { 
      private var counter:int = 1; 


      public function setCounter(value:int):void{ 
       counter = value; 
      } 


      public function getCounter():int{ 
       return counter; 
      } 
     } 
    } 

我希望这可以帮助你!