[SP-pm] Pergunta sobre a variável $_

Thiago Glauco Sanchez thiagoglauco at ticursos.net
Mon Jul 12 17:25:13 PDT 2010


Flávio, meu impaciente padawan, não seria:

for (@meu_array){
     código do bloco...
     ...onde $_ recebe individualmente cada elemento do array
}

e no perl 5.12 você pode definir $_ localmente com my.

C:\Users\thiago\Desktop>perl -E "$_ = 10; for my $_ (0..9){say $_} say $_;"
0 #no meu bloco for, a $_ local recebe valores de 0..9 e não influencia 
a $_ global
1
2
3
4
5
6
7
8
9
10 #repare que 10 é o valor fora do bloco!!!


Em 12/07/2010 21:10, Giuliani Sanches escreveu:
> Essa é a famosa global "default variable".
>
> Você não vai conseguir fazer um foreach nessa variável pois ela é um scalar.
>
> Ela é usada automaticamente pelo perl em diversas funções, loops,
> testes de arquivos ...
>
> Da uma lida aqui http://perldoc.perl.org/perlvar.html e você vai
> entende-la melhor.
>
> []'s
>
> Em 12 de julho de 2010 20:49, "Flávio R. Lopes"
> <flavio.lopes em links.inf.br>  escreveu:
>    
>> Olá pessoal!
>>
>> Como funciona (na memória) os dados que ficam armazenados na variável $_  ?
>> Ou seja, supondo que dentro de um programa meu, eu a utilize em dois "blocos
>> foreach":
>>
>> ... código ...
>> foreach ($_) {
>> ...código_do_bloco-1....
>>
>> }
>>
>> # e depois novamente em outro bloco:
>>
>> foreach ($_) {
>> ...código_do_bloco-2....
>>
>>   }
>>
>> Quero dizer o seguinte, o último valor que ficou armazenado nela ($_), ao
>> final do primeiro bloco, será o "primeiro" valor a ser considerado quando o
>> programa for rodar o bloco-2 ?
>> É preciso "limpar" esta variável antes de usá-la em outro trecho do código?
>>
>> Não sei se fui claro...
>>
>> Abraço,
>> Flávio
>>
>>
>> _______________________________________________
>> SaoPaulo-pm mailing list
>> SaoPaulo-pm em pm.org
>> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>>
>>      
>
>
>    


-- 
What is the sound of Perl? Is it not the sound of a wall that people have
stopped banging their heads against?
—Larry Wall

Thiago Glauco Sanchez
Intrutor Perl e Redes
www.ticursos.net



More information about the SaoPaulo-pm mailing list