Sobes.tech
Junior — Middle

Mi különbözteti meg az Action típusú delegátokat a Func típusú delegátoktól használat és cél tekintetében?

sobes.tech MI

Válasz az MI-től

A C# nyelvben az Action és Func delegátumok célja és visszatérési értéke szerint különböznek:

  • Action — egy delegát, amely egy olyan metódust képvisel, amely nem ad vissza értéket (void). 0-tól 16 paraméterig fogadhat el, de mindig void-ot ad vissza.

  • Func — egy delegát, amely egy olyan metódust képvisel, amely értéket ad vissza. 0-tól 16 paraméterig fogadhat el, ahol az utolsó paraméter a visszatérési érték típusa.

Példa:

Action<string> print = message => Console.WriteLine(message);
print("Helló, Action!"); // kiírja az üzenetet, nem ad vissza semmit

Func<int, int, int> add = (a, b) => a + b;
int result = add(3, 4); // 7-et ad vissza

Ezért használja az Action-t, amikor a metódus nem ad vissza semmit, és Func-t, amikor eredményt kell visszaadni.