&lt;code&gt;<br>ccn@ccn-laptop ~<br>$ perl -le &#39;my @a=(1,2,3); while(my $r = shift @a){}; print @a&#39;<br><br>ccn@ccn-laptop ~<br>$ perl -le &#39;my @a=(0,1,2,3); while(my $r = shift @a){}; print @a&#39;<br>123<br>&lt;/code&gt;<br>
<br><div class="gmail_quote">2010/5/27 Andrew Shitov <span dir="ltr">&lt;<a href="mailto:andy@shitov.ru">andy@shitov.ru</a>&gt;</span><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
Увидел вот такой код внутри класса.<br>
<br>
sub clear{<br>
    my $template = shift @args;<br>
    @{$self-&gt;{tokens}} = ();<br>
    foreach (map {$_-&gt;{name}} @{$template-&gt;{si}}){<br>
        while (my $r = shift @{$self-&gt;{$_}-&gt;{res}}){}<br>
    }<br>
}<br>
<br>
<br>
Заслуживает внимания способ очистки массива:<br>
<br>
while (my $r = shift @a) {}<br>
<br>
Клево же :-)<br>
<br>
--<br>
Andrew Shitov<br>
______________________________________________________________________<br>
<a href="mailto:andy@shitov.ru">andy@shitov.ru</a> | <a href="http://shitov.ru" target="_blank">http://shitov.ru</a><br>
<font color="#888888">--<br>
Moscow.pm mailing list<br>
<a href="mailto:moscow-pm@pm.org">moscow-pm@pm.org</a> | <a href="http://moscow.pm.org" target="_blank">http://moscow.pm.org</a><br>
</font></blockquote></div><br><br clear="all"><br>-- <br>Alexander<br>