Ok...
 
O operador as já testa se a instância é da classe. O seu código pode ser 
"descompilado" assim:
 
if Variavel is Tipo then
  Result := Tipo(Variavel)
else
  raise EInvalidCast..... etc.
 
Portanto seu código 
 
if Variavel is Tipo then
  (Variavel as Tipo).Prop := Valor;
 
seria equivalente ao seguinte:
 
if Variavel is Tipo then
   if Variavel is Tipo then
      Tipo(Variavel).Prop := Valor
  else
    raise EInvalidCast...etc.
 
Você está "perguntando" para a variável seu tipo 2 vezes! O código abaixo:
 
if Variavel is Tipo then
   Tipo(Variavel).Prop := Valor;
 
é mais eficiente.
 
Um abraço,
 
Daniel Polistchuck
Consulting Services Manager
<http://info.borland.com.br/borcon> Tel.: (55 11) 2165 - 8000 / 8196-5947
<http://info.borland.com.br/borcon> [EMAIL PROTECTED] - www.borland.com.br 
<http://www.borland.com.br/> 

A Borland Software é líder mundial em soluções independentes de plataforma para 
a Criação Otimizada de Software (Software Delivery Optimization), auxiliando 
nossos clientes a transporem as barreiras atuais do desenvolvimento, para 
maximizar o valor do software para seu negócio. 

  <http://info.borland.com.br/delphi> 

 

________________________________

From: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] On Behalf Of 
Alencar - Philler Informatica
Sent: Sunday, January 22, 2006 1:59 PM
To: delphi-br@yahoogrupos.com.br
Subject: Re: [delphi-br] [maf] Resetar variavel


> poderia ser reescrito assim
>
>     if (TForm.Components[Cont] is TLabel) then
>         TLabel(TForm.Components[Cont]).Caption := '';
>
> O as não é necessário, já que você já usou o "is".
>
> Daniel Polistchuck
> Consulting Services Manager

Ola Daniel.

Gosto de saber o porquê das coisas, pois isso acrescenta conhecimento e
"tira" a cegueira.
Poderia explicar o quê ou quanto muda a nivel de processamento desse
jeito q vc sugeriu?

Obrigado.

Alencar
---------------------------------------
    Philler Informatica Ltda
    Jose Alencar Philereno
         ICQ 13458351
Messenger/Skype (voz): alencar

"Feliz aquele que transfere o que sabe
e aprende o que ensina" Cora Coralina


-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>






Yahoo! Grupos, um serviço oferecido por:        
PUBLICIDADE

 
<http://br.rd.yahoo.com/SIG=12f3t0kgm/M=387526.7874194.8723313.1588051/D=brclubs/S=2137111264:HM/Y=BR/EXP=1137952754/A=3250393/R=2/id=noscript/SIG=16e71fapv/*http://landingstrip.dell.com/landingstrip/ls.asp?CID=10194&LID=295942&DGC=BA&DGStor=DHS&DGSite=Yahoo&Conum=BR&DURL=http://www1.la.dell.com/content/products/category.aspx/desktops?c%3Dbr%26l%3Dpt%26s%3Dbsd>
 

________________________________

Links do Yahoo! Grupos


*       Para visitar o site do seu grupo na web, acesse:
        http://br.groups.yahoo.com/group/delphi-br/
          
*       Para sair deste grupo, envie um e-mail para:
        [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> 
          
*       O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço 
do Yahoo! <http://br.yahoo.com/info/utos.html> . 




[As partes desta mensagem que não continham texto foram removidas]



-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

<*> Para ver as mensagens antigas, acesse:
    http://br.groups.yahoo.com/group/delphi-br/messages

<*> Para falar com o moderador, envie um e-mail para:
    [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/delphi-br/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 


Responder a