C++ da umumiy turlardan foydalangan holda, shablon funksiyalar va sinflarni aniqlashimiz mumkin



Download 52,16 Kb.
bet5/10
Sana01.07.2021
Hajmi52,16 Kb.
#106308
1   2   3   4   5   6   7   8   9   10
Bog'liq
C

#include

  • #include

  • using namespace std;

     

    1. template T>

    2. T maxValue(const T& value1, const T& value2)

    3. {

    4. if (value1 > value2)

    5. return value1;

    6. else

    10. return value2;

    11. }


     

    12. int main()

    13. {

    14. cout << "1 va 3 ning kattasi: " << maxValue(1, 3) << endl;



    15. cout << "1.5 va 0.3 ning kattasi: "

    16. << maxValue(1.5, 0.3) << endl;

    17. cout << "‘A’ va ‘N’ ning kattasi: "

    18. << maxValue('A', 'N') << endl;

    19. cout << " \"NBC\" va \"ABC\" ning kattasi: "

    20. << maxValue(string("NBC"), string("ABC")) << endl;

     

    21. return 0;



    22. }

    Natija:

    1 va 3 ning kattasi: 3

    1.5 va 0.3 ning kattasi: 1.5

    ‘A’ va ‘N’ ning kattasi: N

    "NBC" va "ABC" ning kattasi: NBC



     

     

    Misol: Umumiy toifa



    Qismda umumiy toifali funksiya aniqlanadi.

    O`tgan semestrda ko`rib chiqilgan 12.8-kodli ro`yxatdagi TanlabSaralash.cpp dasturida double turidagi elementlardan tashkil topgan massivni saralovchi funksiya berilgan edi. Bu yerda o`sha funksiya nusxasi keltirilgan:



    1. void tanlabSaralash(double list[], int listHajm)

    2. {

    3. for (int i = 0; i < listHajm - 1; i++)

    4. {

    5. // list[i..listHajm-1] dagi minimumni topish

    6. double joriyMinimum = list[i];

    7. int joriyMinimumIndeks = i;

     

    1. for (int j = i + 1; j < listHajm; j++)

    2. {

    10. if (joriyMinimum > list[j])

    11. {


    12. joriyMinimum = list[j];

    13. joriyMinimumIndeks = j;

    14. }

    15. }


     

    16. // list[i] ni list[joriyMinimumIndeks] bilan almashtirish, agar zarur bo`lsa;

    17. if (joriyMinimumIndeks != i)

    18. {


    19. list[joriyMinimumIndeks] = list[i];

    20. list[i] = joriyMinimum;

    21. }

    22. }


    23. }

     

    Bu funksiyani int, char, string va hokazo turlardagi qiymatlardan iborat massivlarni saralashga mo`ljallangan yangi funksiya hosil qilish uchun qayta sozlash oson. Bu turlarning har biri uchun saralashni bajarish uchun koddagi double kalit so`zini int, char yoki string kalit so`zlari bilan almashtirish kerak (1- va 6-qator).



    Bir qancha saralash funksiyalarini yozish o`rniga, shunchaki, barcha turlar uchun o`rinli bo`lgan, bir dona funksiya shablonini yozishimiz mumkin. 1.3-kodli ro`yxatda massiv elementlarini saralash funksiyasi aniqlangan.

    1.3-kodli ro`yxat. GenericSort.cpp


    1. Download 52,16 Kb.

      Do'stlaringiz bilan baham:
  • 1   2   3   4   5   6   7   8   9   10




    Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
    ma'muriyatiga murojaat qiling

    kiriting | ro'yxatdan o'tish
        Bosh sahifa
    юртда тантана
    Боғда битган
    Бугун юртда
    Эшитганлар жилманглар
    Эшитмадим деманглар
    битган бодомлар
    Yangiariq tumani
    qitish marakazi
    Raqamli texnologiyalar
    ilishida muhokamadan
    tasdiqqa tavsiya
    tavsiya etilgan
    iqtisodiyot kafedrasi
    steiermarkischen landesregierung
    asarlaringizni yuboring
    o'zingizning asarlaringizni
    Iltimos faqat
    faqat o'zingizning
    steierm rkischen
    landesregierung fachabteilung
    rkischen landesregierung
    hamshira loyihasi
    loyihasi mavsum
    faolyatining oqibatlari
    asosiy adabiyotlar
    fakulteti ahborot
    ahborot havfsizligi
    havfsizligi kafedrasi
    fanidan bo’yicha
    fakulteti iqtisodiyot
    boshqaruv fakulteti
    chiqarishda boshqaruv
    ishlab chiqarishda
    iqtisodiyot fakultet
    multiservis tarmoqlari
    fanidan asosiy
    Uzbek fanidan
    mavzulari potok
    asosidagi multiservis
    'aliyyil a'ziym
    billahil 'aliyyil
    illaa billahil
    quvvata illaa
    falah' deganida
    Kompyuter savodxonligi
    bo’yicha mustaqil
    'alal falah'
    Hayya 'alal
    'alas soloh
    Hayya 'alas
    mavsum boyicha


    yuklab olish