Ir para conteúdo
Fórum Script Brasil
  • 0

Diferença quando se faz um cast


darth_ivan

Pergunta

3 respostass a esta questão

Posts Recomendados

  • 0

Opa

É também acredito que não há diferença, de ambas as formas da pra trabalhar do mesmo jeito.

Seria mais por questões de estética de código, qual maneira é mais conveniente trabalhar...

A única coisa que deve afetar é otmização do programa, como mencionou o Jhonas.

abrs

Link para o comentário
Compartilhar em outros sites

  • 0
vocês sabem qual a diferença entre fazer um cast com a diretiva "as" ou então passar o objeto como parâmetro do nome da classe?
dizer "passar o objeto como parâmetro do nome da classe" não é muito apropriado, já que o nome da classe apenas a identifica - não é uma função ou procedimento. Isto está apenas dizendo ao compilador que aquele endereço de memória se refere a um objeto daquela classe, ok?!.

Voltando a questão, como já disseram, a diferença está na otimização apenas (apesar, de eu não ver qualquer relação com rede neste caso).

Vamos ver na prática como fica este código:

procedure TForm1.Button1Click(Sender: TObject);
begin
  (Sender as TButton).Caption := 'Novo nome';
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  TButton(Sender).Caption := 'Novo nome';
end;

cpuhw2.png

A diferença está na chamada a uma função AsClass (destaque), com um acréscimo de 12 bytes no executável a cada chamada e um tempinho a mais para o processamento da função.

Abraços

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...