[Cascavel-pm] Parametros por referência

Giuliani Deon Sanches giulianisanches em gmail.com
Segunda Julho 27 04:23:42 PDT 2009


2009/7/26 Daniel de Oliveira Mantovani <daniel.oliveira.mantovani em gmail.com>:
> 2009/7/26 Eden Cardim <edencardim em gmail.com>:
>> 2009/7/26 Daniel de Oliveira Mantovani <daniel.oliveira.mantovani em gmail.com>:
>>> É porque sua função retorna um resultado, se você faz:
>>>
>>> rev @lista;
>>> print @lista;
>>>
>>> Você não está mudando o @lista, e sim trabalhando com os valores contidos nele,
>>> agora quando você faz:
>>>
>>> @lista = rev @lista;
>>>
>>> Você trabalha com os valores de @lista, recebe um valor e atribui em
>>> @lista, você poderia fazer algo como:
>>>
>>> my @pijama = rev @lista;
>>> print @pijama; #321
>>>
>>> Sua função simplesmente recebe um valor e trabalha com ele retornando
>>> outro valor, que pode ser armazenado, no caso eu armazenei em @pijama.
>>
>> Não confuda o rapaz, isso não tem nada a ver com passagem por referência.
>
> Eu expliquei o que o programa dele faz.
>
>>
>> --
>>   Eden Cardim       Need help with your Catalyst or DBIx::Class project?
>>  Code Monkey                    http://www.shadowcat.co.uk/catalyst/
>>  Shadowcat Systems Ltd.  Want a managed development or deployment platform?
>> http://edenc.vox.com/            http://www.shadowcat.co.uk/servers/
>> _______________________________________________
>> Cascavel-pm mailing list
>> Cascavel-pm em pm.org
>> http://mail.pm.org/mailman/listinfo/cascavel-pm
>>
>
>
>
> --
> "Deus usa os loucos pra confundir os sábios"
> http://mantovanihouse.blogspot.com/
> This is my poney:
> -------(\_------------_/)-----------
> -------)--(----------)--(-----------
> ------(----(---------)----)----------
> -------)----(-------)----(-----------
> -------(----(-------)----)-----------
> --------\_-(\\.---.//)-_/------------
> ----------\)' -8--8- '(/--------------
> -----------/------------\---------------
> ----------(--)--------(--)--------------
> ------------(_c__c_)----------------
> ----------------------------------------
> perl -MLWP::Simple -le 'grep{ print $1 if
> /href="(http.+?)"/}split($/,get("http://www.perl.org.br"))'
> _______________________________________________
> Cascavel-pm mailing list
> Cascavel-pm em pm.org
> http://mail.pm.org/mailman/listinfo/cascavel-pm
>

@Daniel: Na realidade o que ela esta fazendo eu saquei :) A questão é
"porque" ela esta fazendo.

@Edenc: Não entendi direito a questão de "invocação do método", pois
eu faço isso no exemplo que passei. Na realidade aquela atribuição
usada (@lista = rev @lista) esta ali somente porque foi dessa forma
que funcionou. Inicialmente aquelas 3 linhas finais eram:

my @lista = (1, 2, 3);
rev @lista;
print @lista, "\n";

-- 
twitter.com/giulianisanches
giulianisanches.blogspot.com


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