• 5: Shablon funksiyalarda funksiyalarni qayta yuklash mexanizmi.
  • : Shablon sinflar yaratish va ulardan foydalanish




    Download 106,51 Kb.
    bet4/4
    Sana21.12.2023
    Hajmi106,51 Kb.
    #125890
    1   2   3   4
    Bog'liq
    DASTURLASH 5

    4: Shablon sinflar yaratish va ulardan foydalanish
    Konstruktor sinf ishga tushirilganda chaqiriladi. Agar

    sinfni shablonni taqdim etadigan yoki "zavod" deb hisoblang


    misollarni yaratish uchun chizilgan, konstruktor ishga tushiradi
    ushbu namunalarning turishi. Konstruktor kirishda namuna oladi
    ma'lumotlar ( o'zi parametr ) va uni usul ichida yangilaydi. Python yordam beradi
    va avtomatik ravishda sizga namunani uzatadi. Biroq, bu sabab bo'lishi mumkin
    tartibsizlik, lekin keyinchalik bu haqida ko'proq.
    Konstruktor tanasining ichida (5) (chunki u ichkariga joylashtirilgan
    undan keyin yo'g'on ichak) noyob xususiyatga ega bo'lgan ikkita atribut qo'shilgan
    Masalan: id va count . Ko'pgina liftlarda, har birida
    stul noyob raqam bilan belgilanadi. Id atributi raqamni anglatadi.
    Bundan tashqari, bir nechta chang'ichilar bitta stulga minishlari mumkin - ularning soni
    Qiymat hisoblash atributida saqlanadi va nolga tenglashtiriladi. To'lash
    diqqat: konstruktor hech narsani qaytarmaydi, lekin qiymatlarni yangilaydi,
    misol uchun noyob.

    5: Shablon funksiyalarda funksiyalarni qayta yuklash mexanizmi.
    Ma’lumki, funksiyalarni aniqlashda ulam ing qaytarishi lozim

    bo‘lgan qiymatlar tipi va funksiya uchun zarur bo ‘lgan parametrlar


    tipini ko'rsatish lozim edi.
    Faraz qilaylik, ikkita butun sonni q o ‘shish uchun funksiya
    ciurilgan b o ‘lsin. Agar uchta butun sonni q o ‘shish talab qilingan
    bo‘lsa, ular uchun boshqa nomdagi funksiyani qurish talab qilinadi.
    Ikkita haqiqiy sonni qo‘shish uchun esa boshqa funksiya qurish lozim
    bo'ladi.
    Bunday hollarda bir xil funksiyani takror va takror yozishning
    o'm iga, C++ tili bir xil nomdagi funksiyalarni qurish imkonini beradi.
    Dastumi kompilatsiya qilish jarayonida C++ funksiyalaming har
    biridagi argumentlar miqdori e ’tiborga olinadi va aynan kerak bo'lgan
    funksiyani chaqiradi. Kompilyatorga bir nechta funksiyalar orasidan
    kcragini tanlash imkoniyati funksiyalarni qayta yuklash deb ataladi.
    105
    Funksiyalami qayta yuklash amali bir xil nomdagi param etrlam i

    har xil tipga mansub b o ‘lgan turli funksiyalar uchun qo‘llashga ruxsat


    beradi.
    Masalan, quyidagi dastur addjvalues nomli ikkita funksiyani
    qayta yuklash uchun xizmat qiladi:
    #include
    int add_values (int a, int b)
    {
    return(a + b);
    }
    int add_values (int a, int b, int c)
    f
    return(a + b + c);
    }
    void main(void)
    {
    cout « “200 + 801 = “ « add_values(200, 801) « endl;
    cout « “100 + 201 + 700 = “ « add_values(100, 201, 700)
    « endl;
    }
    Ushbu dastur quyidagi natijani beradi:
    D :\TC \B IK \Q A YTA .EXE
    -
    3j X
    2 0 0 + 801 = 1001
    10 0
    + 201 + 7 0 0 = 1O01
    K o‘rinib turibdiki, dasturda ikkita bir xil nomdagi, ammo para­
    metrlari soni har xil b o ‘lgan addjvalues funksiyasi aniqlangan. Bu
    holda kompilyator param etrlar soniga k o ‘ra qaysi funksiyani qo‘llash
    haqida mustaqil ravishda xulosa qiladi.
    Quyidagi misolga e ’tibor bering. Unda show message funksiyasi
    qayta yuklanadi. Birinchi show_message funksiyasiga parametrlar
    uzatilmaydi va u ekranga standart axborotni chiqaradi. Ikkinchisi unga
    uzatilgan bitta m a’lumotni, uchinchisi esa ikkita m a’lumotni ekranga
    chiqaradi.
    106
    ^include

    void show_message(void)


    {
    cout « “ Standart axborot: “ « “ C + + da dastrulashni
    o ‘rganamiz ” « endl;
    }
    void show_message(char *message)
    {
    cout « message « endl;
    }
    void show_message(char *first, char *second')
    { cout «
    first « endl;
    cout « second « endl; }
    void main(void)
    {
    show_message();
    show_m essage(“ C + + tili da dastrulash o so n ”);
    show_m essage(“ C + + tili z o ‘r til!”, “Qayta yukalsh yaxshi
    imkoniyat!”) ;
    }
    Bu dastur quyidagi natijani beradi:
    D:\TC\RIN\QAYTA1 .EXE
    . □ X
    S t a n d a r t a x b o r o t :
    C++ da d a s t r u l a s h n i 0
    C++ t i l i da d a s t r u la s h oson
    C++ t i l i z o ' r t i l *
    Q a yta y u k ls h y a x s h i in k o n iy a t ?
    o’r g a n a m iz
    Qayta yuklanadigan funksiyalar bir xil tipdagi qiymatlami qay-
    tarishi lozim, ammo parametrlarining miqdori va tiplari har xil bo‘lishi
    ham mumkin.

    Foydalanilgan adabiyotlar


    internet: http://fayllar.org
    Download 106,51 Kb.
    1   2   3   4




    Download 106,51 Kb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    : Shablon sinflar yaratish va ulardan foydalanish

    Download 106,51 Kb.