[Moscow.pm] int

Иван Бессарабов ivan на bessarabov.ru
Ср Июн 9 01:25:31 PDT 2010


Александр, Андрей, Евгений, Руслан, большое спасибо за объяснения! =)

8 июня 2010 г. 19:15 пользователь Ruslan Zakirov
<ruz на bestpractical.com> написал:
> 2010/6/8 Eugene Toropov <jt на aaanet.ru>:
>> Кстати, вчера наткнулись на старый код, который в 5.8. еще работал, а в 5.10
>> уже нет:
>>
>> 5.8.8> perl -e 'use strict; my $a = [1, 2, 3]; print $#{@$a}'
>> 2
>>
>> 5.10.1> perl -e "use strict; my $a = [1, 2, 3]; print $#{@$a}"
>> Can't use string ("3") as an ARRAY ref while "strict refs" in use at -e line
>> 1.
>>
>> Сам я всегда использовал $#$a, если было нужно.
>
> И это правильно, что эквивалентно $#{$a}. Новое поведение тоже верно:
> $#{...} для получения аргумента задает скалярный контекст, а @$x в нем
> возвращает кол-во элементов. И это хорошо - стало более консистентно.
>
> --
> Best regards, Ruslan.
> --
> Moscow.pm mailing list
> moscow-pm на pm.org | http://moscow.pm.org
>


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