gpt4 book ai didi

Perl,最佳实践 : Empty Arguments handling inside subroutine, 使用 $_

转载 作者:行者123 更新时间:2023-12-05 03:59:46 25 4
gpt4 key购买 nike

我在阅读“Damian Conway 的 Perl 最佳实践”一书时遇到了以下代码示例:

    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”提供参数时,我们会将$_ 分配给“@args”

但不清楚将 $_ 分配给 @args 有什么好处,因为 $_ 是 undef,对吗?

提前谢谢你。

最佳答案

@_$_是两个不同的变量,所以即使@_也可以定义$_ > 是空的。 $_ 在许多函数中用作默认值,例如lengthchr .

参见 $_@_ .

关于Perl,最佳实践 : Empty Arguments handling inside subroutine, 使用 $_,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56891713/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com