在 Perl 中使用剩余参数进行解构

问题描述 投票:0回答:1

我刚刚开始使用 Perl (5.38),最近学会了如何从参数数组中解构参数

@_
;例如:
my ($var1, $var2) = @_;

但是,我无法找到任何有关使用 JavaScript 中的剩余参数的信息,但我完全有可能使用了对 JS 过于特定的搜索词。例如,在 JavaScript 中,您可以执行

function (var1, ...rest)
。在 Perl 中是否有类似
my ($var1, ...$rest) = @_;
的等效方法?我确实看到了这篇看似相关的文章In Perl, how can I unpack to multiplevariables?,但这对于这个简单的用例来说似乎过于复杂,而且我无法从最初的浏览中判断它是否可以用于这种情况,因为该示例使用的是结构。

注意:我正在专门寻找等效的剩余参数,例如,我知道我可以通过使用切片来实现相同的效果,但这需要多次分配(除非我遗漏了某些内容)。

perl variadic-functions destructuring
1个回答
0
投票
my ( $var1, @rest ) = @_;

my $var1 = shift;
my @rest = @_;
© www.soinside.com 2019 - 2024. All rights reserved.