Respublikasi oliy va o’rta maxsus ta’lim vazirligi guliston davlat universiteti amaliy matematika va
Download 1.4 Mb.
|
portal.guldu.uz-Дастурлаш технологиялари
- Bu sahifa navigatsiya:
- Savollar
Umumlashtirilgan usullarUmumiy sinflardan tashqari, umumiy parametrlarni xuddi shu tarzda ishlatadigan umumiy usullarni ham yaratishingiz mumkin. Masalan; misol uchun: private static void Main(string[] args) { int x = 7; int y = 25; Swap s2);
Swap Console.WriteLine($"s1={s1} s2={s2}"); // s1=bye { T temp = x; x = y; y = temp; } } Bu parametrlarni mos yozuvlar asosida qabul qiladigan va ularning qiymatlarini o'zgartiradigan umumiy almashtirish usulini belgilaydi. Bunday holda, ushbu parametrlarning qaysi turini anglatishi muhim emas. Asosiy usulda biz almashtirish usulini chaqiramiz, uni ma'lum bir tip bilan yozamiz va unga bir nechta qiymatlarni beramiz. Savollar:Metod nima Umumlashgan metod nima Umumlashgan metodlarning avzalliklari. 3-Mavzu: Umumlashgan delegatlar.Reja: .NET da Delegatlar. Umumlashgan delegatlar. Usullar singari, delegatlar ham umumiy bo'lishi mumkin. Quyida umumiy delegatni e'lon qilishning umumiy shakli keltirilgan: Tur parametrlari ro'yxati joylashgan joyiga e'tibor bering. U darhol delegat nomidan kelib chiqadi. Umumiy delegatlarning afzalligi shundan iboratki, ular yozilgan umumiy shaklda aniqlanishi mumkin, keyinchalik ularni har qanday mos keladigan usul bilan moslashtirish mumkin. Umumiy delegatlar xavfsiz usulda chaqiriladigan usulni belgilashning yanada moslashuvchan usulini taklif qilishadi. General.dan oldin (.NET 2.0 da) xuddi shu yakuniy natijaga System.Object parametri yordamida erishish mumkin edi: public delegate void MyDelegate(object arg); Bu sizga vakilning maqsadiga biron bir dalillarni yuborishga imkon beradigan bo'lsa-da, u tipdagi xavfsizlikni ta'minlamaydi va boks / qutidan olib tashlash zaruratini bartaraf etmaydi. Keling, umumiy delegatlarni ishlatish misolini ko'rib chiqaylik: using System; namespace ConsoleApplication1 { // Создадим обобщенный делегат delegate T MyDel class MySum { public static int SumInt(int a, int b) { return a + b; } public static string SumStr(string s1, string s2) { return s1 + " " + s2; } public static char SumCh(char a, char b) { return (char)(a + b); } } class Program { static void Main() { // Реализуем несколько методов обобщенного делегата MyDel MyDel del2("Отличная","погода")); MyDel Console.ReadLine(); } } } Deylik, c # delegatini yaratishda biz uni yanada universalroq yoki aniqroq umumlashtirmoqchimiz! Download 1.4 Mb. Do'stlaringiz bilan baham: |
ma'muriyatiga murojaat qiling