最初のパラメーターを配列として、2 番目のパラメーターをスカラーとして受け取る関数またはサブルーチンがあります。例えば、
sub calc {
my @array = $_[0];
my $scalar = $_[1];
print @array, $scalar;
}
問題は、関数が配列を渡された配列の最初の値と等しくし、スカラーが渡された配列の 2 番目の値になることです。最初の配列を配列全体にしたい場合、私はしません。配列のディープ コピーを作成する必要があります。例えば、
my @array = ('51', 'M');
my $scalar = 21;
と
calc(@array, $scalar)
51 M
必要なときに印刷し51 M 21
ます。