RE: [Cascavel-pm] Funções com argumentos de arrays

Luis Campos de Carvalho monsieur_champs em yahoo.com.br
Sexta Janeiro 6 08:38:26 PST 2006


  Cuidado ao usar isto! 
  Valide sempre seus argumentos para que as pessoas saibam o que a sub espera ao receber. Esta
forma de passar argumentos dispensa parêntesis, e pode fazer com que a sub seja facilmente
confundida com uma palavra-chave do Perl.

  Boa sorte, e conte com a gente se precisar de ajuda. :-)

--- Brinde Storm - Steven Koch <s.koch em brindestorm.com> escreveu:

> Isto que precisava...
> \:) 
> 
> -----Mensagem original-----
> De: cascavel-pm-bounces em pm.org [mailto:cascavel-pm-bounces em pm.org] Em nome
> de Luis Campos de Carvalho
> Enviada: sexta-feira, 6 de Janeiro de 2006 16:33
> Para: Cascavel Perl Mongers
> Assunto: Re: [Cascavel-pm] Funções com argumentos de arrays
> 
> --- Brinde Storm - Steven Koch <s.koch em brindestorm.com> escreveu:
> > Como posso fazer isso em Perl
> >  
> > minhaFuncao( @args1, $pos, @args2);
> >  
> > Fiz isso mas não esta a funcionar:
> > 
> > sub minhaFuncao(){
> >     my(@args1, $pos, @args2) = @_;
> >     ...
> > }
> 
>   Você não pode passar listas e valores simples misturados.
>   Use subroutine templates ou passe os valores por referência:
> 
>   sub minha_funcao(\@,$,\@){
>     my( $arr_ref1, $scalar, $arr_ref2 ) = @_;
>     # ...
>     return $something;
>   }
> 
>   # Para chamar esta, basta dizer
>   minha_funcao( @array1, $scalar, @array2 );
> 
>   ou (mais simples de entender e usar):
> 
>   sub minha_funcao{
>     my( $arr_ref1, $scalar, $arr_ref2 ) = @_;
>     # ... 
>     return $something;
>   }
> 
>   # para chamar esta, precisa dizer
>   minha_funcao( \@array1, $scalar, \@array2 );
> 
>   Espero que isso ajude.
>   Leia o capítulo 3 ("Gory Details") do Camel Book, lá tem todas as
> explicações que você precisa sobre sub templating.
> 
>   Putamplexos!
> 
> --
> Luis Campos de Carvalho
> Member of "São Paulo Perl Mongers",
> Unix SysAdmin & OCP/DBA Oracle
> 
> 
> 	
> 
> 
> 
> 	
> 		
> _______________________________________________________
> Yahoo! doce lar. Faça do Yahoo! sua homepage. 
> http://br.yahoo.com/homepageset.html 
> 
> _______________________________________________
> Cascavel-pm mailing list
> Cascavel-pm em pm.org
> http://mail.pm.org/mailman/listinfo/cascavel-pm
> 
> _______________________________________________
> Cascavel-pm mailing list
> Cascavel-pm em pm.org
> http://mail.pm.org/mailman/listinfo/cascavel-pm
> 


--
Luis Campos de Carvalho
Member of "São Paulo Perl Mongers",
Unix SysAdmin & OCP/DBA Oracle


	



	
		
_______________________________________________________ 
Yahoo! doce lar. Faça do Yahoo! sua homepage. 
http://br.yahoo.com/homepageset.html 



Mais detalhes sobre a lista de discussão Cascavel-pm