[SP-pm] Passando um array por parâmetro para uma subrotina
Adriano Ferreira
aferreira at shopzilla.com
Thu Aug 14 11:46:10 PDT 2008
2008/8/14 Luis Motta Campos <luismottacampos at yahoo.co.uk>:
> caio ariede wrote:
>>
>> Olá.
>>
>> Estava pesquisando, em como passar um array por parâmetro para uma
>> subrotina, cheguei ao código abaixo, que por sinal não sei se esta
>> totalmente correto:
>>
>> sub calculate
>> {
>> my $linha_a = shift;
>> my $matriz_a = shift;
>> my $matriz_b = shift;
>>
>> @matriz_a = @{$matriz_a};
>> @matriz_b = @{$matriz_b};
>> }
Ou ainda melhor, usando @{ +shift }
sub calculate {
my $linha_a = shift;
my @matriz_a = @{ +shift };
my @matriz_b = @{ +shift };
}
que vai livrá-lo de warnings como estes
Ambiguous use of @{shift} resolved to @shift at -e line ...
Global symbol "@shift" requires explicit package name at -e line ...
que lhe avisam que "@{shift}" será o mesmo que @shift.
>> Gostaria de saber se tem alguma forma alternativa pra fazer o @matriz_a =
>> @{$matriz_a};
>
> Você sempre pode fazer tudo de uma vez só:
>
> sub calculate {
> my $linha_a = shift;
> my @matriz_a = @{ shift };
> my @matriz_b = @{ shift };
> }
>
> Putamplexos!
> --
> Luis Motta Campos is a software engineer,
> Perl Programmer, foodie and photographer.
> _______________________________________________
> SaoPaulo-pm mailing list
> SaoPaulo-pm at pm.org
> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>
More information about the SaoPaulo-pm
mailing list