• (message != null) message();
  • Message
  • Mavzu: C# tilida delegatlar, hodisalar va lambda ifodalardan foydalanish




    Download 1.15 Mb.
    bet8/11
    Sana24.06.2023
    Hajmi1.15 Mb.
    #75594
    1   2   3   4   5   6   7   8   9   10   11
    Bog'liq
    Mavzu C# tilida delegatlar, hodisalar va lambda ifodalardan foy
    Firminiy blanka, Sultonova Dilobarxon, 1, contract 952124723, 1135632, Dinshunoslik. Mustaqil ish, Fozilov Bekzodbek Avtomobil ekologik xavfsizligi Mustaqil ish, Fozilov Bekzodbek IN va DA mustaqil ish, 0708 electricity, Masalalar to`plami, Moliya va soliqlar, Kamqonlik asoratlari, 1-mavzu. Jismoniy rivojlanishni tekshirish va baholash usullari., CEFR WRITING TASK 1 - LETTERS @FunEnglishwithme(1)
    3
    4
    5

    Message? message = Salom Dasturchi!;
    message += _;
    message();
    message -= _; 
    if (message != null) message();

    Delegatdan usullarni olib tashlash haqiqatda usul chaqiruvi ro'yxatida 1 kamroq usulni o'z ichiga olgan yangi delegatni yaratadi.
    Shuni ta'kidlash kerakki, usulni o'chirishda delegatda usullar bo'lmasligi va keyin o'zgaruvchining null bo'lishi mumkin bo'lgan vaziyat yuzaga kelishi mumkin. Shuning uchun, bu holda, o'zgaruvchi faqat turdagi o'zgaruvchi sifatida emas Message, balki Message? , bu xabar vakili yoki null qiymatni ifodalashi mumkin bo'lgan tur.
    Bundan tashqari, ikkinchi qo'ng'iroqdan oldin biz o'zgaruvchini null uchun tekshiramiz.
    Yo'q qilishda shuni yodda tutingki, agar delegatda bir xil usulga bir nechta havolalar bo'lsa, u holda -= operatsiyasi delegatning chaqiruv ro'yxatining oxiridan qidirishni boshlaydi va faqat birinchi topilgan hodisani olib tashlaydi. Agar delegatning chaqiruv ro'yxatida bunday usul bo'lmasa, -= operatsiyasi hech qanday ta'sir qilmaydi. Delegatlarni birlashtirish uchun Delegatlar boshqa delegatlarga birlashtirilishi mumkin. Misol uchun:

    1
    2
    3
    4
    5
    6
    7
    8

    Message mes1 = Salom Dasturchi!;
    Message mes2 = HowAreYou;
    Message mes3 = mes1 + mes2;
    mes3();
    void Salom Dasturchi!() => Console.WriteLine("Salom Dasturchi!");
    void HowAreYou() => Console.WriteLine("How are you?");

    Download 1.15 Mb.
    1   2   3   4   5   6   7   8   9   10   11




    Download 1.15 Mb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    Mavzu: C# tilida delegatlar, hodisalar va lambda ifodalardan foydalanish

    Download 1.15 Mb.