Enviado do meu iPhone
> Em 24 de mar de 2017, às 14:18, Aureliano Guedes <guedes_1...@hotmail.com> > escreveu: > > Eu resolvi o problema, era so eu retornar um array de resultados da recurção > [caso tenha] e incluir juntar com o array da interação anterior sempre que > terminar uma das recurções. > > Quanto a dúvida da string, seria forçar uma string vazia (uma string que não > está guardando nenhuma referência) virar um array; > > my @a = qw(a b c d e); > > my $b = \@a; #isso é uma string com o endereço de memoria do array > (referÊncia) > Não, isso não é uma string, isso é uma variável scalar com uma referencia > > my $b; > > @$b = qw(a b c d e); #isso é um array forçado > Nao, isso é uma variável escalar com uma referencia e sendo desreferenciado. E isso funciona graças a auto-vivificação > > mas a dúvida é, o que fica em $b? > Como eu disse, $b é uma referencia a array > Pelo que me parece ele cria automaticamente uma referência pra um array > anonimo que dereferenciado por @$b > Autovivificação > > O que me leva a crer que > my @a = qw(a b c d e); > > my $b = \@a; > A única diferença é @a não ser anônimo > > é o mesmo que > > my $b ; > > @$b = qw(a b c d e);j > From: Rio-pm <rio-pm-bounces+guedes_1000=hotmail....@pm.org> on behalf of > Andre Carneiro <andregarciacarne...@gmail.com> > Sent: Friday, March 24, 2017 4:54:22 PM > To: Perl Mongers Rio de Janeiro > Subject: Re: [Rio-pm] (sem assunto) > > Creio que você esteja pensando nisso errado! > > Se vc tem uma String em $S, você não tem uma referência para array @A. Se > você quer uma referência do array @A em $S, você pode fazer: > > my $S = \@A; > > Eu sugiro que você use Data::Printer ou mesmo Data::Dumper para ver o > conteúdo das variáveis. > > Quanto ao problema da string, não sei se entendi o que vc quer. Vou dizer > como transformar uma string em array sem usar 'join'. > > <code> > use strict; > use warnings; > use feature qw/say/; > use Data::Printer colored => 1; > > my $s = "WHATEVER"; > my @A = split //,$s; > > print p @A; > > > > </code> > > > > 2017-03-22 19:14 GMT-03:00 Aureliano Guedes <guedes_1...@hotmail.com>: >> Olá monges, >> >> Estou com uma série de dúvidas relacionada a uma rotina que estou fazendo; >> >> Dado um hash de arrays eu preciso construir uma hierarquia não redundante >> dos valores desse array. >> >> Tudo esta explicado melhor em : >> http://pastebin.com/64fJvYr6 >> >> Duas dúvidas surgiram meio essa questão >> 1- Como forçar uma string virar um array sem fazer join dos valores, sendo >> que a string não está guardando uma referência? >> Algo como: >> my $s; >> @$s = qw(a b c d e); >> >> >> 2- Se eu tenho uma string $S que guarda uma referencia para um array @A, >> essa string está dentro de uma rotina e a rotina é recursiva, e precisa >> enviar os valores da string S para a recursão, o que deve ser enviado é a >> string $S ou o array @$S? >> sub teste{ >> >> my ($S) = @_; >> >> teste(\@$S) # ou simplesmente $S? >> } >> >> Desde já grato. >> >> Att, >> acp >> >> _______________________________________________ >> Rio-pm mailing list >> Rio-pm@pm.org >> http://mail.pm.org/mailman/listinfo/rio-pm > > > > -- > André Garcia Carneiro > Software Engineer > (11)982907780 > _______________________________________________ > Rio-pm mailing list > Rio-pm@pm.org > http://mail.pm.org/mailman/listinfo/rio-pm
_______________________________________________ Rio-pm mailing list Rio-pm@pm.org http://mail.pm.org/mailman/listinfo/rio-pm