Action delegati
Nodirbek Abdulaxadov
Action delegati bu - Func kabi System nomlar fazosi tarkibiga kiruvchi umumiy delegatdir. Action delegati tuzilish jihatidan Func delegatiga o'xshash, lekin Action delegatida hech qanday parametr qaytarilmaydi. Shuning uchun Action delegati void tipli metodlar bilan ishlatiladi.
Masalan, quyidagi delegat int qiymatini ekranga chiqaradi:
Natija:
Endi xuddi shu metodni Action delegati yordamida ishlatib ko'ramiz:
Natija:
Shu joyiga kelganda kallamni ichida qisqa tutashuv bo'lib simi tegib ketdi shekilli bir qiziq savol keb qoldi:
Hali action delegati bilan, hali boshqa delegat bilan ishlatayotgan metodni o'ziga hech e'tibor berdingizmi? ConsolePrint metodining vazifasi nima? ConsolePrint metodini chaqirsam u baraka topkur Console.WriteLine metodini chaqiryapti. Ha qovun ConsolePrint ni ovora qilmasdan, to'g'ridan to'g'ri Console.WriteLine ga murojaat qilsam bo'lmaydimi?
Xullas, yuz marta savol bergandan bir marta sinab ko'rgan yaxshi:
Natija:
Action delegatini new kalit so'zi yordamida ham e'lon qilish mumkin:
Action delegati 16 tagacha har xil turdagi kirish parametrlarini qabul qilishi mumkin.
Action delagatining anonim metod bilan qo'llanishi:
Action delegatining lyambda ifoda bilan qo'llanishi:
Action va Func delegatlarining afzalliklari
Delegatlarni aniqlash oson va tez.
Kodni qisqa qiladi.
Ilova davomida mos keladigan tip.
Shunday qilib, Action delegati tiplari bilan qiymat qaytarmaydigan har qanday metoddan foydalanishingiz mumkin.
Last updated