Duplicar uma variável em AS3
-
05-07-2019 - |
Pergunta
Eu estou tentando trocar duas variáveis ??em ActionScript.
Eu tentei usar:
a = 42
b = 50
tempvar = a
a = b
b = tempvar
para mudar, mas isso não funciona porque as variáveis ??ainda referenciar o valor original, então se eu set b = a, e em seguida, altere a, b muda também.
em Ruby, você tem clone (), mas eu não sei um método semelhante para AS3.
Ajuda?
Solução
A seguir funciona bem. Certamente você não mostraram todo o seu código?
import flash.display.Sprite;
public class SwapTest extends Sprite
{
public function SwapTest()
{
var a:int=42;
var b:int=50;
var temp:int=a;
a=b;
b=temp;
trace("a="+a);
trace("b="+b);
}
}
Traços
a=50 b=42
No clone necessário. Mesmo o seguinte código untyped, que segue mais de perto o seu exemplo dá o mesmo resultado:
var a=42;
var b=50;
var temp=a;
a=b;
b=temp;
trace("a="+a);
trace("b="+b);
Como você está declarando a, b e tempVar? É este código da timeline?
Outras dicas
var tempvar:uint = new uint(a);
a = new uint(b);
b = tempvar;
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow