有人能告诉我什么
shift if(@_)
Run Code Online (Sandbox Code Playgroud)
perl意味着什么?
那会是什么呢?
sub id {
my $self = shift;
$self->{ID} = shift if @_;
return $self->{ID};
}
Run Code Online (Sandbox Code Playgroud)
意思?谢谢.
这是一个对象的手动访问器/ mutator
print $obj->id; # Accessor form
$obj->id(NEW_VAL); # Mutator form
Run Code Online (Sandbox Code Playgroud)
它在功能上等同于:
sub id {
my $self = shift;
if (@_) { # If called with additional parameters, set the value:
$self->{ID} = shift(@_);
}
return $self->{ID};
}
Run Code Online (Sandbox Code Playgroud)