Junior — Middle
Môžeš uviesť hlavné typy delegátov používaných v programovacom jazyku?
sobes.tech AI
Odpoveď od AI
V jazyku C# sú delegáti typy, ktoré predstavujú odkazy na metódy s určitým podpisom. Hlavné typy delegátov:
- Single-cast delegáti — odkazujú na jednu metódu.
- Multicast delegáti — môžu obsahovať zoznam metód, ktoré sa volajú sekvenčne.
Okrem toho existujú štandardné generické delegáty:
Action— delegát, ktorý predstavuje metódu bez návratovej hodnoty a s 0 alebo viac parametrami.Func<TResult>aFunc<T1, TResult>a podobne — delegáty, ktoré vracajú hodnotu a môžu prijímať parametre.Predicate<T>— delegát, ktorý prijíma jeden parameter a vraciabool.
Príklad deklarácie a použitia delegáta:
public delegate int Operation(int x, int y);
Operation add = (a, b) => a + b;
int result = add(3, 4); // 7
Multicast delegát:
Operation op = add;
op += (a, b) => a * b;
foreach (Operation del in op.GetInvocationList()) {
Console.WriteLine(del(3, 4));
}
Takže hlavné typy delegátov sú: single-cast, multicast, ako aj štandardné generické delegáty Action, Func a Predicate.