[Cascavel-pm] Parametros por referência

Giuliani Deon Sanches giulianisanches em gmail.com
Segunda Julho 27 06:49:27 PDT 2009


2009/7/27 Eden Cardim <edencardim em gmail.com>:
> 2009/7/27 Fernando Oliveira <fernandocorrea em gmail.com>:
>> fernando em fernando-laptop:~$ perl -e '
>> sub rev {
>>    @_ = reverse @_;
>> }
>>
>> @lista = qw/1 2 3/;
>> print rev(@lista), $/;
>> '
>> 321
>
> Na verdade, pra mostrar a passagem por referência em ação, teria que
> ser algo assim:
>
> perl -le'my @list = qw(1 2 3); sub rev { @_[0.. em _-1] = reverse @_ }
> rev(@list); print @list'
>
> no caso, a atribuição prum slice de @_ preserva o aliasing pros
> elementos de @list, enquanto que uma atribuição pra @_ sobrescreve a
> lista que está em @_, destruindo os aliases.
>
> --
>   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
>

Err.. apesar de minha linguagem principal de programação ser object
pascal, o conceito de "invocar um método" é igual XD :P

@Fernando eu conheço a função reverse eu só estava tentando
implementar algo igual a titulo de exercício.

Eu vou verificar o que eu fiz de errado a noite, pois pelo discutido
aqui, a regra é clara: a cagada é minha :D

[]'s e grato pela atenção.

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


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