|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Dmitry Y. Labutin 2:5020/400 10 Feb 2004 10:13:24 To : Sergey Gernichenko Subject : Re[2]: Передача HASH'а в процедуру по значению -------------------------------------------------------------------------------- Приветствую. DYL>> Hужно следующее. DYL>> Hапример есть хеш: DYL>> $q{a} = 1; SG> ^^^^^^^^^^^^^^^^^ DYL>> Hужно в функцию передать хеш $q{значение здесь вычисляется в ходе DYL>> работы}, SG> Я не понял, у тебя значения элементов хеша скаляры или что??? Концы - скаляры. Т.е. возможны такие варианты: $q{a} = 1; $q{b}{a} = 2; $q{b}{b} = 3; $q{c}{a}{a}{b} = 10; Уровень размерности (вложенности) заранее неизвестен. Функции я передаю хеш (размерность - 1), а в ней идет присвоение скалярных значений. Твой вариант: sub qqq { $_[0]->{b} = 2; } $q{a} = 1; qqq (\$q{b}); print $q{b}->{b}; Ругается так: Not a HASH reference at q.pl line 3. -- Дмитрий Лабутин dmitry@incub.ru Отправлено через сервер Форумы@mail.ru - http://talk.mail.ru --- ifmail v.2.15dev5.3 * Origin: incub creative team (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/27849dfc61b9.html, оценка из 5, голосов 10
|