Junior
¿Qué delegados conoces?
sobes.tech AI
Respuesta de la IA
Los principales tipos de delegados en .NET:
System.Delegate(clase abstracta base) — la base para todos los delegados.System.MulticastDelegate(hereda deDelegate) — permite que un delegado contenga varios métodos.- Delegados genéricos en .NET Framework 3.5+:
Action— delegado sin valor de retorno (void).Action<T>...Action<T1, T2, T3, T4>— delegados con uno a cuatro parámetros y sin valor de retorno.Func<TResult>— delegado con valor de retorno del tipoTResulty sin parámetros.Func<T, TResult>...Func<T1, T2, T3, T4, TResult>— delegados con uno a cuatro parámetros y valor de retorno del tipoTResult.Predicate<T>— tipo especialFunc<T, bool>, que representa un método que define un conjunto de criterios y determina si un objeto dado cumple con estos criterios.
Ejemplo de uso de Action y Func:
// Delegado Action: acepta un int, no devuelve nada
Action<int> printNumber = (num) => Console.WriteLine(num);
printNumber(10); // Imprime 10
// Delegado Func: acepta dos int, devuelve un int
Func<int, int, int> addNumbers = (a, b) => a + b;
int result = addNumbers(5, 3); // result = 8
Los delegados también se usan en eventos (event).