beleza, só para fechar, para a variável estar em escopos diferentes, ou seja, o delimitador seria as chaves, certo? ou não?<br><br><div class="gmail_quote">2008/4/28 Solli Honorio <<a href="mailto:shonorio@gmail.com">shonorio@gmail.com</a>>:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">no segundo exemplo, eu sobre-escrevi uma variável glogal temporariamente, mas quando carrego a sub vou imprimir o valor do valor global. <br>
<div><div></div><div class="Wj3C7c"><br><div class="gmail_quote">2008/4/28 Samir Cury <<a href="mailto:rimasy@gmail.com" target="_blank">rimasy@gmail.com</a>>:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">entendi, no segundo exemplo se "tenta" imprimir a variável de um escopo em outro, então não daria certo, correto?<br>
<br>
<div><span class="gmail_quote">Em 28/04/08, <b class="gmail_sendername">Solli Honorio</b> <<a href="mailto:shonorio@gmail.com" target="_blank">shonorio@gmail.com</a>> escreveu:</span><div><div></div><div>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0px 0px 0px 0.8ex; padding-left: 1ex;">Isto mesmo Samir, você pode escrever coisas assim :<br><br><span style="font-family: courier new,monospace;"><code></span><br style="font-family: courier new,monospace;">
<br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">for my $i (0..100) {</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;"> imprimir($i);</span><br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;">}</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;"><br>sub imprimir {<br> my $i = shift;<br> print "$i\n";<br>
}<br><br></code></span><br><br>Apesar das variáveis terem o mesmo nome, elas possuem endereço de memória distintas, por isto são variáveis diferentes. Mas tome cuidado com isto, pois o código abaixo não vai rodar exatamente como você acha, teste você mesmo.<br>
<br><span style="font-family: courier new,monospace;"><code></span><br style="font-family: courier new,monospace;"><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">my $i = 0;<br>
for my $i (0..100) {</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;"> imprimir($i);</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">}</span><br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;"><br>sub imprimir {<br> print "$i\n";<br>}<br><br></code></span><br><br>Outro detalhe importante são os closures, mas acho melhor você compreender bem a questão da variável local e global.<br>
<br>Abraços,<br><br>Solli M. Honório<br><br style="font-family: courier new,monospace;">
<div class="gmail_quote">2008/4/28 Samir Cury <<a href="mailto:rimasy@gmail.com" target="_blank">rimasy@gmail.com</a>>:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div><span>Pessoal,<br><br>Vendo algumas palestras lá no ET pensei o seguinte:<br><br>foi falado muito de <br> <br>{<br><br> Escopo<br><br>} <br><br>então se eu "tranco" o meu loop dentro do escopo usando $i como índice, e declaro "$i" como "my $i", então ela será uma variável local dentro daquele escopo APENAS, ou seja, para o resto do programa (fora do escopo) ela nem existe, então eu posso em todos os loops usar a mesma variável.<br>
<br>Bom foi isso que eu deduzi, queria uma confirmação.<br><br>Valeu!<br><br></span></div>_______________________________________________<br>Rio-pm mailing list<br><a href="mailto:Rio-pm@pm.org" target="_blank">Rio-pm@pm.org</a><br>
<a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a><br></blockquote></div><span><br><br clear="all">
<br>-- <br>"o animal satisfeito dorme". - Guimarães Rosa </span><br>_______________________________________________<br>Rio-pm mailing list<br><a href="mailto:Rio-pm@pm.org" target="_blank">Rio-pm@pm.org</a><br>
<a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a><br></blockquote></div></div></div><br>
<br>_______________________________________________<br>
Rio-pm mailing list<br>
<a href="mailto:Rio-pm@pm.org" target="_blank">Rio-pm@pm.org</a><br>
<a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a><br></blockquote></div><br><br clear="all"><br>-- <br>"o animal satisfeito dorme". - Guimarães Rosa
</div></div><br>_______________________________________________<br>
Rio-pm mailing list<br>
<a href="mailto:Rio-pm@pm.org">Rio-pm@pm.org</a><br>
<a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a><br></blockquote></div><br>