Fórum Qual a diferença entre TEdit(sender) e (sender as TEdit)?? #373533

13/08/2009

0

Galera sempre que programei aprendi a fazer assim
(sender as TEdit)
....

só que em alguns exemplos vejo códigos do tipo
TEdit(sender)



tem alguma diferença, tipo um é melhor que outro, coisa e tal?[/code]


Makarioszen

Makarioszen

Responder

Posts

13/08/2009

Osocram

Olha se me lembro bem
assim (sender as TEdit) ele testa o cast antes de fazer
e TEdit(sender) ele ja faz o cast, então teoricamente assim é mais facil

Partitulamente eu so uso TEdit(sender). primeiro por causa da estetica e segundo por eu achar q é mais rapido.


Responder

Gostei + 0

13/08/2009

Yallebr

Amigo o mais indicado é (XXX as TEdit) pois retorna uma exceção se for TEdit(XXX) retorna access violation e então mais dificil de depurar.

Abs!


Responder

Gostei + 0

13/08/2009

Marco Salles

(Objeto as TClasse) mais indicado [b:ce09dfe186]com certeza[/b:ce09dfe186]
TClasse(Objeto) em algumas situações provoca erros de dificil depuração
e vc perde muito tempo ate encontrar o erro


Responder

Gostei + 0

14/08/2009

Makarioszen

Bom amigos, Obrigado pelos esclarecimentos foi muito útil!!!!!


Responder

Gostei + 0

14/08/2009

Guinther

Dr

TTipo(Objeto) é um type-cast estilo C.
(Objeto as TTipo), nos bastidores, testa o tipo do objeto usando um ´IS´, que é um operador RTTI, e RTTI é lento, sempre vai ser. As boas práticas sempre sugerem o segundo método, é mais seguro, MAS se você tiver certeza sobre o tipo que está convertendo, com certeza o type cast estilo C vai ser sempre mais rápido.

Att,

Guinther Pauli
Editor Geral Revista ClubeDelphi
http://guintherpauli.blospot.com
http://twitter.com/guintherpauli


Responder

Gostei + 0

14/08/2009

Guinther

Dr

TTipo(Objeto) é um type-cast estilo C.
(Objeto as TTipo), nos bastidores, testa o tipo do objeto usando um ´IS´, que é um operador RTTI, e RTTI é lento, sempre vai ser. As boas práticas sempre sugerem o segundo método, é mais seguro, MAS se você tiver certeza sobre o tipo que está convertendo, com certeza o type cast estilo C vai ser sempre mais rápido.

Att,

Guinther Pauli
Editor Geral Revista ClubeDelphi
http://guintherpauli.blospot.com
http://twitter.com/guintherpauli


Responder

Gostei + 0

14/08/2009

Marco Salles

Deixe-me para evitar futuras más interpretações explicar o conteudo de :

TClasse(Objeto) em algumas situações provoca erros de dificil depuração


Não quiz dizer que TClasse(Objeto) provoca o erro .. O que eu quis dizer é que
qnd se tem erros TClasse(Objeto) pode não acusar o Erro e vc recebe
mensagems estranhas e perde muito tempo depurando atê encontrar o erro.
A execução do Programa na Depuração ,não para em TClasse(Objeto) o
que certamente acontece qnd se usa (Objeto as TClasse).


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar