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