Мне кажется, что использование где либо в коде \@_ может создать "неуловимые" баги.<br>Смотрите сами:<br><br>sub master_ref<br>
{<br>
return \@_;<br>
}<br>
<br>
sub print_all<br>
{<br>
print $slave1;<br>
print @slave2;<br>
print $slave3{3};<br>
print "\n";<br>
}<br>
<br>
<br>$slave1 = 1;<br>@slave2 = 2;<br>%slave3 = (3 => 3);<br><br>print_all();<br><br>$master = master_ref($slave1, @slave2, values %slave3, @slave5);<br><br>foreach(@$master)<br>{<br> $_= 0;<br>}<br>print_all();<br><br>
Ваши комментарии<br><br>P.S.<br>1. Я знаю, почему так происходит.<br>2. Уверен, что это багоопасная ситуация, т.к. по самой ссылке и по значения невозможно установить, что значения массива связанны ещё с чем-нибудь<br>