[Cascavel-pm] [Spam] Re: [Spam] Re: PrincipaisContribuidoresCascavelPM
Nelson Ferraz
nferraz em gmail.com
Segunda Maio 28 10:56:53 PDT 2007
> Se você pode declarar uma vez só, por que fazer isso várias vezes,
> ou seja, por quê fazer isso dentro de um
> loop, por exemplo? Para mim continua esquisito.
Um exemplo simples: imagine que você queira refactorar o seu código,
separando o loop em outra subrotina. Se as variáveis estiverem
declaradas dentro do próprio loop, você não precisa caçá-las (e não
corre o risco de esquecê-as) no início da subrotina: o código é auto-
contido.
Um outro exemplo:
my $count = 0;
foreach (@foo) {
print ++$count;
}
# muitas linhas depois...
foreach (@bar) {
print ++$count; # ops! $count nao estava em zero
}
Esse é o mesmo problema das variáveis globais, embora num escopo
menor: a variável pode ter seu valor alterado, o que levaria a
efeitos colaterais indesejados.
Mais detalhes sobre a lista de discussão Cascavel-pm