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 кошуу = (a, b) => a + b;
int натыйжа = кошуу(3, 4); // 7
Мултикаст делегат:
Operation op = кошуу;
op += (a, b) => a * b;
foreach (Operation del in op.GetInvocationList()) {
Console.WriteLine(del(3, 4));
}
Ошентип, негизги делегат түрлөрү — бир-каст, мултикаст, ошондой эле стандарттык жалпы делегаттар Action, Func жана Predicate.