Perl,最佳实践:在子例程中处理空参数,使用 $_
Perl, Best Practices: Empty Arguments handling inside subroutine, use of $_
我在阅读书籍 "Perl Best Practices by Damian Conway" 时 运行 进入以下代码示例:
sub fix {
my (@args) = @_ ? @_ : $_; # Default to fixing $_ if no args provided
for my $arg (@args) {
print $arg;
}
return;
}
你能帮我理解一下作者在这部分代码中到底想完成什么吗?
my (@args) = @_ ? @_ : $_; # Default to fixing $_ if no args provided
我理解"if"的作用,我很清楚当用户没有为"fix() sub"[=15=提供参数时,我们会将$_
分配给“@args” ]
但不清楚将 $_
分配给 @args 有什么好处,因为 $_
是 undef,对吗?
提前致谢。
我在阅读书籍 "Perl Best Practices by Damian Conway" 时 运行 进入以下代码示例:
sub fix {
my (@args) = @_ ? @_ : $_; # Default to fixing $_ if no args provided
for my $arg (@args) {
print $arg;
}
return;
}
你能帮我理解一下作者在这部分代码中到底想完成什么吗?
my (@args) = @_ ? @_ : $_; # Default to fixing $_ if no args provided
我理解"if"的作用,我很清楚当用户没有为"fix() sub"[=15=提供参数时,我们会将$_
分配给“@args” ]
但不清楚将 $_
分配给 @args 有什么好处,因为 $_
是 undef,对吗?
提前致谢。