Delegate é um recurso da linguagem C# que permite que se faça referência a um método. São também referenciados como apontadores de funções.
Sendo os delegates classes, estes são instanciados também, mas os parâmetros são nomes de uma função.
Assinatura do delegate:
Delegate int ExemploDeDelegate(string nome, bool b);
Considerando um método:
private int TesteFuncao(string str, bool bln)
{...}
ExemploDeDelegate exdel = new ExemploDeDelegate(TesteFuncao);
Desta forma o exdel refere-se ao método TesteFuncao();
Para isso existem 3 fases:
Declaração;
Instanciação;
Invocação;
using System;
namespace TesteDelegate
{
// Declaração
public delegate void TesteDelegate();
class ExDelegate
{
public static void TesteFuncao()
{
Console.WriteLine("Chamaram-me?");
}
public static void Main()
{
// Instanciação
TesteDelegate testeDelegate = new TesteDelegate(TesteFuncao);
// Invocação
testeDelegate();
Console.ReadKey();
}
}
}
Sem comentários:
Enviar um comentário