Qual a diferença entre TEdit(sender) e (sender as TEdit)??
Galera sempre que programei aprendi a fazer assim ....
só que em alguns exemplos vejo códigos do tipo
tem alguma diferença, tipo um é melhor que outro, coisa e tal?[/code]
(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
Curtidas 0
Respostas
Osocram
13/08/2009
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.
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.
GOSTEI 0
Yallebr
13/08/2009
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!
Abs!
GOSTEI 0
Marco Salles
13/08/2009
(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
TClasse(Objeto) em algumas situações provoca erros de dificil depuração
e vc perde muito tempo ate encontrar o erro
GOSTEI 0
Makarioszen
13/08/2009
Bom amigos, Obrigado pelos esclarecimentos foi muito útil!!!!!
GOSTEI 0
Guinther
13/08/2009
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
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
GOSTEI 0
Guinther
13/08/2009
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
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
GOSTEI 0
Marco Salles
13/08/2009
Deixe-me para evitar futuras más interpretações explicar o conteudo de :
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).
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).
GOSTEI 0