|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Igor Gerdler 2:5020/400 06 Apr 2002 11:26:21 To : Andrey Sapozhnikov Subject : Благодарность -------------------------------------------------------------------------------- e.ru> <a8k7mv$1am3$1@ddt.demos.su> <slrnaardod.l5n.ran@banquet.lan.ice.ru> e.ru> <a8kfst$2k15$1@ddt.demos.su> <slrnaarij3.l5n.ran@banquet.lan.ice.ru> e.ru> <3CADD7F5.7000300@icb.chel.su> From: "Igor Gerdler" <perl@doreworld.com> Добрый день, уважаемый Андрей! Огромное спасибо за предоставленную информацию! Очень познавательно! Особенно меня обескуражило > my @a = (1, 2, 3, 4, 5, 6); > my $ref = \@a[2,3]; Пришлось посмотреть фрагмент в работе, сразу представить результат не удалось :о( Для таких-же как я поясню: ссылку на часть массива, количеством элементов более 1 получить нельзя, в этом случае интерпретатор возвращает ссылку на последний элемент этой части массива. В нашем случае $ref присавивается ссылка на четвертый элемент массива (т.к. вероятнее всего они нумеруются с 0). Если выразится в терминах Perl: \@a[2,3] == \$a[3] > Да, для желающих, пример несоблюдения первого условия из "обобщенного правила": > > Объект 'aaaa' (литерал). Скалярную ссылку от него взять можно, но он не lvalue. > Попытка передать 'aaaa' в качестве параметра в функцию с прототипом \$ будет > неуспешной. Я именно этот вариант и имел ввиду, когда задавал вопрос Артему :о) Всего доброго! Игорь Гердлер --- ifmail v.2.15dev5 * Origin: Demos online service (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/6577f63c29bb.html, оценка из 5, голосов 10
|