Sobes.tech
Junior

Milyen küldötteket ismersz?

sobes.tech MI

Válasz az MI-től

A .NET fő delegátus típusai:

  • System.Delegate (absztrakt alap osztály) — minden delegátus alapja.
  • System.MulticastDelegate (öröklődik a Delegate-től) — lehetővé teszi, hogy egy delegát több metódust tartalmazzon.
  • Generikus delegátusok a .NET Framework 3.5+-ben:
    • Action — visszatérési érték nélküli (void) delegát.
    • Action<T> ... Action<T1, T2, T3, T4> — egy vagy négy paraméteres, visszatérési érték nélküli delegátok.
    • Func<TResult>TResult típusú visszatérési értékkel rendelkező, paraméter nélküli delegát.
    • Func<T, TResult> ... Func<T1, T2, T3, T4, TResult> — egy vagy négy paraméteres, TResult típusú visszatérési értékkel rendelkező delegátok.
    • Predicate<T> — speciális Func<T, bool> típus, amely egy módszert ír le, amely meghatározza, hogy egy adott objektum megfelel-e bizonyos kritériumoknak.

Példa Action és Func használatára:

// Action delegát: elfogad egy int-et, nem ad vissza értéket
Action<int> printNumber = (num) => Console.WriteLine(num);
printNumber(10); // Kiírja 10-et

// Func delegát: elfogad két int-et, visszaad egy int-et
Func<int, int, int> addNumbers = (a, b) => a + b;
int result = addNumbers(5, 3); // eredmény = 8

A delegátusokat eseményekben (event) is használják.