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

Brinde Storm - Steven Koch s.koch em brindestorm.com
Sexta Janeiro 6 09:32:21 PST 2006


Consegui, segue um exemplo

@a  = ('a1','a2','a3','b1','b2','b3');
@b  = ('x1','w1','v1');

print "@a" . "\n em b\n\n" ;
	
pu( \@a, 3, \@b );

sub pu(\@$@){
 my( $arr_ref1, $scalar, $arr_ref2 ) = @_;

 print "\n 
array= @$arr_ref1  \n
lugar =  $scalar  \n
elementos =  @$arr_ref2 
\n";
}

-----Mensagem original-----
De: cascavel-pm-bounces em pm.org [mailto:cascavel-pm-bounces em pm.org] Em nome
de Brinde Storm - Steven Koch
Enviada: sexta-feira, 6 de Janeiro de 2006 17:06
Para: 'Cascavel Perl Mongers'
Assunto: RE: [Cascavel-pm] Funções com argumentos de arrays

Digamos então: 
<perl>
@a  = ('a1','a2','a3','b1','b2','b3');
@b  = ('x1','w1','v1');

print "@a"."\n em b\n\n" ;

minha_funcao(@a, 3, @b);

sub minha_funcao(\@, \$,\@ ){
	my( $arr_ref1, $scalar, $arr_ref2 ) = @_;

print "\n
array= @{$arr_ref1} \n
lugar = ${$scalar} \n
elementos = @{$arr_ref2}
\n";
}
</perl>

Mas não imprime nada




-----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:49
Para: Cascavel Perl Mongers
Assunto: RE: [Cascavel-pm] Funções com argumentos de arrays


  Claro que pode! 
  Mas deve passar referências para os arrays, não os próprios arrays! 

  Assim:

  @array = qw( isto eh um array de palavras );
  $referencia_para_array = \@array;

  minha_funcao( $referencia_para_array );

  # ou, mesma coisa, mas mais simples:
  minha funcao( \@array );

  # Se precisar passar mais de um, pode fazer assim:
  outra_funcao( \@array1, \@array2, \@array3 );

  # pode passar quantos arrays quiser.

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

> Não posso passar mais de um array como argumento??
> 
> -----Mensagem original-----
> De: cascavel-pm-bounces+s.koch=brindestorm.com em pm.org
> [mailto:cascavel-pm-bounces+s.koch=brindestorm.com em pm.org] Em nome de 
> Brinde Storm - Steven Koch
> Enviada: sexta-feira, 6 de Janeiro de 2006 16:35
> Para: 'Cascavel Perl Mongers'
> Assunto: RE: [Cascavel-pm] Funções com argumentos de arrays
> 
> Quer dizer q se eu criar um pacote com funções e depois querer que 
> outros a utilizem tenho que seguir este isso, arrays no final?
> 
> -----Mensagem original-----
> De: cascavel-pm-bounces em pm.org [mailto:cascavel-pm-bounces em pm.org] Em 
> nome de Marco Lima
> Enviada: sexta-feira, 6 de Janeiro de 2006 16:19
> Para: Cascavel Perl Mongers
> Assunto: Re: [Cascavel-pm] Funções com argumentos de arrays
> 
> use referência !
> 
> para passar uma lista vc soh conseguiria no final tipo ..
> 
> minhaFuncao($pos, @args2);
> 
> Mas isso naum eh bom ... por isso referencie sua lista e passe a 
> referencia dela.
> 
> [ ]'s
> 
> > Como posso fazer isso em Perl
> >  
> > minhaFuncao( @args1, $pos, @args2);
> >  
> > Fiz isso mas não esta a funcionar:
> > 
> > sub minhaFuncao(){
> >     my(@args1, $pos, @args2) = @_;
> >     ...
> > }
> >  
> > =P
> > 
> > _______________________________________________
> > Cascavel-pm mailing list
> > Cascavel-pm em pm.org
> > http://mail.pm.org/mailman/listinfo/cascavel-pm
> > 
> > 
> 
> --
> 
> Marco Lima    
> J. A. P. H.      
> 
> marco.lima em e-via.com.br
> mago em rio.pm.org
> mago em cpan.org
> 
> Sociedade Perl do Brasil   |   http://www.perl.org.br
> Perl Monks                 |   http://www.perlmonks.org
> Brasil Perl Mongers        |   http://brasil.pm.org
> 
> Register Linux User #355235
> Slackware Linux, for the subgenius
> 
> "Ninguém é tão grande que não possa aprender, e nem tão pequeno que 
> não possa ensinar"
> _______________________________________________
> 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
> 
> _______________________________________________
> 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 

_______________________________________________
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



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