[Moscow.pm] Как очистить массив

wow eraserfingers на gmail.com
Чт Май 27 06:12:01 PDT 2010


~ % re.pl
$ @a = (undef, 0, 1, 2, 3); while(@a) { shift @a }

0$ @a;

$


On 05/27/2010 01:40 PM, Andrei wrote:
> 27 мая 2010 г. 10:50 пользователь Andrew Shitov <andy на shitov.ru 
> <mailto:andy на shitov.ru>> написал:
>
>     Увидел вот такой код внутри класса.
>
>     sub clear{
>        my $template = shift @args;
>        @{$self->{tokens}} = ();
>        foreach (map {$_->{name}} @{$template->{si}}){
>            while (my $r = shift @{$self->{$_}->{res}}){}
>        }
>     }
>
>
>     Заслуживает внимания способ очистки массива:
>
>     while (my $r = shift @a) {}
>
>     Клево же :-)
>
>
> До первого нуля, пустой строки undef, да?
>
> -- 
> Andrei Protasovitski
> < andrei[dot]protasovitski[at]gmail[dot]com >
> Diemen, Netherlands
>
>
> --
> Moscow.pm mailing list
> moscow-pm на pm.org | http://moscow.pm.org
>    

----------- следущая часть -----------
Вложение в формате HTML было извлечено&hellip;
URL: <http://mail.pm.org/pipermail/moscow-pm/attachments/20100527/d1d0d1c5/attachment.html>


Подробная информация о списке рассылки Moscow-pm