gpt4 book ai didi

perl - perl 中可选参数的默认值为 true

转载 作者:行者123 更新时间:2023-12-01 22:56:53 25 4
gpt4 key购买 nike

我正在定义一个带有可选参数的方法。通常我会使用这样的东西:

sub foo {
($self, $optarg) = @_;
$optarg ||= 1;
}

我希望将可选参数视为 bool 值,默认值为 true .这显然不适用于上述情况,因为 $optarg如果未传入参数,则计算结果为 false。

有没有办法区分没有传递的参数和评估为假的值?

最佳答案

如果你有 Perl 5.10 或更高版本,那么你可以替换 $optarg ||= 1$optarg //= 1 ,这将修改 $optarg仅当它是 undef .

或者,如果您想允许 undef要作为显式假值传递,您可以说 $optarg = 1 if @_ < 2 .

关于perl - perl 中可选参数的默认值为 true,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14269398/

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