Sobes.tech
Junior — Middle

Կարող եք նշել ծրագրավորման լեզվում օգտագործվող հիմնական դելեգատների տեսակները?

sobes.tech AI

Պատասխան AI-ից

C# լեզվում դելեգատները տեսակներ են, որոնք ներկայացնում են հղումներ մեթոդների՝ որոշակի ստորագրությամբ։ Հիմնական դելեգատների տեսակները՝

  • Միակ-կատ դելեգատներ (Single-cast delegates) — հղում են մի մեթոդի վրա։
  • Բազմակատ դելեգատներ (Multicast delegates) — կարող են պարունակել մեթոդների ցանկ, որոնք հերթով կանչվում են։

Բացի այդ, կան ստանդարտ ընդհանուր դելեգատներ՝

  • Action — դելեգատ, որը ներկայացնում է մեթոդ առանց վերադարձվող արժեքի և 0 կամ ավելի պարամետրերով։
  • Func<TResult> և Func<T1, TResult> և այլն — դելեգատներ, որոնք վերադարձնում են արժեք և կարող են ընդունել պարամետրեր։
  • Predicate<T> — դելեգատ, որը ընդունում է մեկ պարամետր և վերադարձնում bool։

Նմուշ՝ դելեգատի հայտարարում և օգտագործում՝

public delegate int Operation(int x, int y);

Operation add = (a, b) => a + b;
int result = add(3, 4); // 7

Բազմակատ դելեգատ՝

Operation op = add;
op += (a, b) => a * b;

foreach (Operation del in op.GetInvocationList()) {
    Console.WriteLine(del(3, 4));
}

Արդյունքում՝ հիմնական տեսակները՝ միակ-կատ, բազմակատ, ինչպես նաև ստանդարտ ընդհանուր դելեգատներ՝ Action, Func և Predicate։