Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Gabriel Falieri

Sobre delegate

Recommended Posts

Olá amigos do imasters

Eu sou novo na área de programação e me deparei com a necessidade de usar delegates, e até agora não consegui achar nenhum fórum ou matéria que explique a minha dúvida de forma simples e direta. Por tanto se alguém poder explicar o que é e como funciona de uma forma clara, irei agradecer.
Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Um delegate é um tipo seguro "Ponteiro de função ou Function Pointer" que contém referências aos métodos estáticos ou de instância. delegate são usados ​​para chamar os métodos dinamicamente em tempo de execução. Em .NET, um delegate é declarado da seguinte forma:

 

public delegate int TestedeDelegate(int qunt_produto);

 

A linha acima declara um delegate chamado "TestedeDelegate", que pode chamar dinamicamente qualquer método que tem um tipo de retorno de "int" e aceita um único parâmetro também do tipo "int". Isso faz. Delegate no .NET "tipo de segurança" na medida em que só pode chamar métodos que correspondam às suas assinaturas.

Internamente, a palavra-chave "delegate" faz com que o compilador gee uma classe que deriva de System.MulticastDelegate, que é a classe base para .NET delegate. A classe MulticastDelegate, por sua vez, deriva da classe System.Delegate. A classe MulticastDelegate foi um complemento para o NET Framework. Que primeiro incluiu apenas a classe . A classe MulticastDelegate adicionou a capacidade de encadear uma lista encadeada de delegates chamada de "invocation list" ou lista de chamada. Tradução: MulticastDelegate representa um delegate que pode chamar mais de um método.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.