以下是代码示例:
$test1 = "abc";
$test2 = "def";
function($test1,$test2);
sub function($){
--What should I do here to get the `$test1` and `$test2`--
--Is it possible?--
}
预期结果:
能够通过$test1
获取子函数内的$test2
和function($test1,$test2)
。
感谢您的评论,教学和答案。
答案 0 :(得分:4)
在子程序中,参数将在@_
中可用。您可以使用shift
检索它们:
my $test1 = shift;
my $test2 = shift;
或将@_
分配给列表:
my ($test1, $test2) = @_;
或直接访问它们(任何更改也会反映在外面):
print $_[0];
print $_[1];
e.g。
function($test1,$test2);
sub function {
my ($test1, $test2) = @_;
# Do something with the arguments.
}
注意我已经function
删除了{{1}}中的原型,并且它只允许一个参数。