Junior — Middle
Pode explicar o conceito de delegados e o seu papel na programação?
sobes.tech IA
Resposta da IA
Os delegados em C# são tipos que representam referências a métodos com uma assinatura e um tipo de retorno específicos. Permitem passar métodos como parâmetros, armazená-los em variáveis e chamá-los dinamicamente.
Papel dos delegados:
- Permitem implementar callbacks.
- São usados para eventos e manipulação de eventos.
- Proporcionam flexibilidade e extensibilidade ao código.
Exemplo de uso de um delegado:
// Declaração de um delegado
public delegate int Operation(int x, int y);
class Program
{
static int Add(int a, int b) => a + b;
static int Multiply(int a, int b) => a * b;
static void Main()
{
Operation op = Add;
Console.WriteLine(op(3, 4)); // 7
op = Multiply;
Console.WriteLine(op(3, 4)); // 12
}
}
Dessa forma, os delegados permitem escolher e invocar métodos de forma dinâmica.