[EMAIL PROTECTED] wrote:
> OK here comes the newbie question.
> 
> I found this in a template for creating subroutines, this is the base
> that is created when you use the template to create the subroutine.
> 
> So now the newbie part, why would you place "my  $par1 = shift;" in
> the subroutine template, and what does it do??
> 
> Basically I am trying to find out if I need to modify the template or
> not. Any help would be greatly appreciated.
> 
> Oh and btw I looked at the shift function and it applies to the @_
> array, which is not being used in this subroutine, and neither is
> @par1 , so my only guess would be that the template is creating a
> verifiably empty variable called $par1 .
> 
> 
> 
> sub Irfan
> {
>   my  $par1 = shift;
> 
>         return ;
>         } # ----------  end of subroutine Irfan  ----------

@_ holds the actual arguments passed to the subroutine call.

So if you call the sub as:

   Irfan('foo');

Then inside the sub:

   my $par1 = shift;

will assign the first argument ('foo'), to $par1

This is a very common idiom.

-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
<http://learn.perl.org/> <http://learn.perl.org/first-response>


Reply via email to