我经常使用shift
解包函数参数:
sub my_sub {
my $self = shift;
my $params = shift;
....
}
但是,我的许多同事都在宣扬
shift
实际上是邪恶的。你能解释一下为什么我更喜欢sub my_sub {
my ($self, $params) = @_;
....
}
至
shift
?
最佳答案
它不是邪恶的,它是一种品味之类的东西。您会经常看到一起使用的样式:
sub new {
my $class = shift;
my %self = @_;
return bless \%self, $class;
}
我倾向于使用
shift
当有一个论点或当我想以不同于其他论点的方式对待前几个论点时。
关于perl - 'shift' 对处理 Perl 子程序参数是否有害?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1328411/