• Sinf metodlari va xossalari Malumotlarni saqlashdan tashqari, sinflar funksiyalarni ham o’z ichiga olishi mumkin. Sinf ichida aniqlangan funksiyalar metodlar
  • DateClass
  • Misol. Ikki o’lchovli fazoda geometrik shakl doirasini ifodalovchi oddiy  Circle




    Download 321,36 Kb.
    Pdf ko'rish
    bet6/9
    Sana06.01.2024
    Hajmi321,36 Kb.
    #131130
    1   2   3   4   5   6   7   8   9
    Bog'liq
    Jalilov Lazizbek

    Misol. Ikki o’lchovli fazoda geometrik shakl doirasini ifodalovchi oddiy 
    Circle sinfini ko’rib chiqaylik. Bu sinfning atributlarini quyidagicha ta'riflash 
    mumkin:
    x - koordinata, doira markazini belgilash uchun OX o’qi bo’yicha
    y - koordinata, doira markazini belgilash uchun OY o’qi bo’yicha
    R - aylananing radiusini ko’rsatish uchun
    Uning ba'zi amallarini quyidagicha ta'riflash mumkin:
    findArea() – yuzani hisoblash metodi
    findCircumference() – aylanani uzunligini hisoblash metodi
    RadiusInc() – radiusni oshirish yoki kamaytirish metodi 
    O’zlashtirish (ta’minlash) paytida qiymatlar atributlarning kamida bir 
    qismiga beriladi.
    Agar biz my_circle obyektini yaratadigan bo’lsak, uning
    holatini ko’rsatish uchun x-koordinatalar: 2, y koordinatalari: 3 va R: 4 kabi 
    qiymatlarni belgilashimiz mumkin. Endi, agar RadiusInc() metodiga ikki qiymati 
    bilan murojaat qilsak, R o’zgaruvchining qiymati 8 ga aylanadi. Bu operatsiya 
    my_circle holatini o’zgartiradi, ya'ni obyekt ma'lum xatti harakatlarni bajaradi.


    Sinf metodlari va xossalari 
    Ma'lumotlarni saqlashdan tashqari, sinflar funksiyalarni ham o’z ichiga 
    olishi mumkin. Sinf ichida aniqlangan funksiyalar metodlar deb ataladi.
    Metodlarni sinf ichida ham, tashqarisida ham aniqlash mumkin. Hozircha biz 
    ularni sinf ichida belgilaymiz (tushunarli bo’lishi uchun), ularni sinfdan tashqarida 
    qanday aniqlash mumkin haqida keyingi boblarda ko’rib chiqamiz.
    DateClass sinfi tarkibida print() metodini e’lon qilish:

    class DateClass {

    public:

    int m_day;

    int m_month;

    int m_year;

    void print() // funksiya-a’zoni aniqlash {

    cout << m_day << "/" << m_month << "/" << m_year; }

    };
    Xuddi shu tarzda, struktura a'zolariga ham, sinf a'zolariga ham
    (o’zgaruvchilar va funksiyalarga) a'zo tanlash operatori (.) orqali kirish
    mumkin:
    #include
    class DateClass
    {public:
    int m_day;
    int m_month;
    int m_year;
    void print()
    {
    cout << m_day << "/" << m_month << "/" << m_year;
    }
    };
    int main()


    {
    DateClass today { 3, 8, 2022 };
    today.m_day = 18; // DateClass today obyektining m_day a'zo
    o’zgaruvchisini tanlash uchun a'zo tanlash operatoridan foydalanish 
    today.print(); // DateClass today obyektining print() metodini
    chaqirish uchun a'zo tanlash operatoridan foydalanish
    return 0;
    }
    Dasturni bajarish natijasi:
    3/8/2022
    E'tibor bering, bu dastur yuqoridagi dasturga o’xshaydi, bu yerda
    struktura ishlatiladi. Biroq, bir nechta farqlar mavjud. DateStruct  
    strukturasida uning o’zgaruvchisini parametr sifatida to’g’ridan-to’g’ri

    Download 321,36 Kb.
    1   2   3   4   5   6   7   8   9




    Download 321,36 Kb.
    Pdf ko'rish

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    Misol. Ikki o’lchovli fazoda geometrik shakl doirasini ifodalovchi oddiy  Circle

    Download 321,36 Kb.
    Pdf ko'rish