[Cascavel-pm] get/set com AUTOLOAD
Alceu R. de Freitas Jr.
glasswalk3r em yahoo.com.br
Quarta Dezembro 28 09:01:05 PST 2005
--- Joenio Marques <joenio em gmail.com> escreveu:
> Numa outra classe faço isso:
>
> $url =~ /id=(.+?)&/;
> $obj->codigo($1);
>
> $obj é uma instancia da minha classe com AUTOLOAD
> e codigo é um dos atributos da classe.
>
> Mas isso não esta funcionando, o atributo não é
> setado.
> Fazendo da forma abaixo funciona:
>
> $url =~ /id=(.+?)&/;
> $obj->codigo("$1"); #note aspas
>
> OU
>
> $url =~ /id=(.+?)&/;
> $cod = $1;
> $obj->codigo($cod);
Eu já tive esse problema... o porque acontece eu não
sei, mas tem a ver com a variável global $1 e não com
AUTOLOAD. Eu já tive esse problema fazendo coisas mais
simples, como usar usar o operador "?:".
Talvez porque, para cada escopo diferente, deve
existir um $1. Ou seja, cada tabela de símbolos deve
ter seu $1 e demais irmãos. Só não sei se estou
correto ou não, isso é um chute.
[]'s
Alceu Rodrigues de Freitas Junior
--------------------------------------
glasswalk3r em yahoo.com.br
http://www.imortais.cjb.net
-----------------------------------------------------------------------
A well-used door needs no oil on its hinges.
A swift-flowing stream does not grow stagnant.
Neither sound nor thoughts can travel through a vacuum.
Software rots if not used.
These are great mysteries -- The Tao Of Programming, 5.1
_______________________________________________________
Yahoo! doce lar. Faça do Yahoo! sua homepage.
http://br.yahoo.com/homepageset.html
Mais detalhes sobre a lista de discussão Cascavel-pm