移除并返回数组的最后一个元素,数组长度减一。
my @arr = ('cat', 'dog', 'mouse');
my $item = pop(@arr); # 'mouse'
# @arr is now ('cat', 'dog')
如果数组为空,则返回undef
。
注意:如果数组的最后一个元素是undef
,pop
也可能返回undef
。
my @arr = ('one', 'two', undef);
my $item = pop(@arr); # undef
如果省略 ARRAY,pop
将操作主程序中的@ARGV
数组,但在子程序中则操作@_
数组。pop
将在eval STRING
、BEGIN {}
、INIT {}
、CHECK {}
块中操作@ARGV
数组。
从 Perl 5.14 开始,一个实验性特性允许pop
接受一个标量表达式。该实验被认为不成功,并在 Perl 5.24 中被移除。