Tôi đã không sử dụng Perl trong nhiều năm nhưng phải đối phó với một số mã cũ.Vượt qua chuỗi và mảng tạm thời thành phụ trong 1 dòng?
tôi đã thực hiện một chương trình con mà tôi muốn vượt qua một chuỗi và một mảng vào:
sub pass_in {
my ($str, $array) = @_;
for my $e (@$array) {
print "I see str $str and list elem: $e\n";
}
return 0;
}
my @temp_arr = qw(A B C D E);
my $str = "hello";
pass_in($str, \@temp_arr);
này hoạt động tốt. Nhưng thay vào đó tôi không muốn phải tạo ra một temp_arr
. Được nó bằng cách nào đó có thể làm:
Không làm việc:
pass_in($str, qw(A B C D E));
Cũng không hoạt động:
pass_in($str, \qw(A B C D E));
Vì vậy, tôi không cần phải tạo một biến tạm thời?
Cảm ơn bạn rất nhiều !! điều này đã làm các trick! –
Hoặc bạn có thể gán 'my ($ str, @array) = @ _' và chuyển vào danh sách các phần tử' pass_in ($ str, qw (A B C D E)); ' – Sobrique