There's more than one way to do things | |
PerlMonks |
Re: difficulty in understanding use of @_ and shift in a subroutineby Loops (Curate) |
on Oct 27, 2014 at 06:13 UTC ( [id://1105083]=note: print w/replies, xml ) | Need Help?? |
Hi masood91, welcome to the monastery. You're free to use whichever form you like to process arguments. There may be efficiency gains one way or the other, but usually that isn't overly important. More often, it just is more clear in the shift form. You should be careful though, because your suggestion of using "my $a=@_" wont actually work as you hope. Instead $a will be set to the number of values contained in @_. What you'd want instead is: my ($a) = @_; # force list context in the assignmentor my $a = $_[0]; # set $a to the first parameter passedHere's an example where you might prefer to use shift:
In Section
Seekers of Perl Wisdom
|
|