• Komponenta o’zgaruvchilar va komponenta funksiyalar.
  • Obyekt- nomi. Element - nomi.
  • Sinf-struktura tushunchasi kengaytmasi sifatida




    Download 15.02 Kb.
    Sana14.06.2023
    Hajmi15.02 Kb.
    #72824
    Bog'liq
    1mta
    algnoila, agregat, Aminokislotalar (22 xil)

    1.Sinf ta’rifi
    Sinf-struktura tushunchasi kengaytmasi sifatida.
    Sinflarni eng sodda holda quyidagicha tasvirlash mumkin:
    Sinf-kaliti Sinf-soni {komponentalar ro’yxati}
    Sinf komponentalari sodda holda turlangan ma’lumotlar va funksiyalardan
    iborat bo’ladi. Figurali qavslarga olingan komponentalar ro’yxati Sinf tanasi deb
    ataladi. Sinfga tegishli funksiyalar komponenta-funksiyalar yoki sinf funksiyalari
    deb ataladi.
    Sinf kaliti sifatida struct xizmatchi so’zi ishlatilishi mumkin. Masalan quyi-dagi konstruksiya kompleks son sinfini kiritadi.
    struct complex
    {
    double real;
    double imag;
    void define (double re = 0.0, double im = 0.0)
    {
    real = re; imag = im;
    }
    void display (void)
    {
    cout< = ”real = ”<
    cout< = ”imag = ”<
    }
    };
    Strukturadan bu sinfning farqi shuki, komponenta ma’lumotlardan (real,
    imag) tashqari ikkita komponenta funksiya (define() va display()) kiritilgan.
    Bu kiritilgan sinf o’zgaruvchilar turi deb qaralishi mumkin. Bu turlar
    yordamida konkret ob’ektlarni quyidagicha tasvirlash mumkin:
    Misol uchun:
    complex x,y;
    complex dim[8];
    Sinfga tegishli ob’ektlar quyidagicha tasvirlanadi:
    Sinf-nomi.ob’ekt-nomi
    Dasturda ob’ekt komponentasiga quyidagicha murojaat qilish mumkin:
    Sinf-nomi.ob’ekt-nomi :: komponenta-nomi yoki soddaroq holda
    Obyekt-nomi. Element-nomi
    Misol uchun:
    x.real = 1.24;
    x.imag = 0.0;
    dim[3].Real = 0.25;
    dim[3].Imag = 0.0;
    Sinfga tegishli funksiyalarga quyidagicha murojaat qilinadi:
    ob’ekt-nomi.funksiya-nomi
    Misol uchun:
    x. define(0.9) (Bu holda real = 0.9 va imag = 0.0)
    271
    x. define(4.3,20.0) (Bu holda kompleks son 4.3+i*20.0)
    display funksiyasi ekranda kompleks son qiymatlarini tasvirlaydi.
    Komponenta o’zgaruvchilar va komponenta funksiyalar.
    Sinf komponenta o’zgaruvchilari sifatida o’zgaruvchilar, massivlar, ko’rsatkichlar ishlatilishi mumkin. Elementlar ta’riflanganda inisializasiya qilish mumkin emas. Buning sababi shuki, sinf uchun xotiradan joy ajratilmaydi. Komponenta elementlariga komponenta funksiyalar orqali murojaat qilinganda faqat nomlari ishlatiladi. Sinfdan tashqarida sinf elementlariga emas ob’ekt elementlariga murojaat qilish mumkin. Bu murojaat ikki xil bo’lishi mumkin.
    Obyekt- nomi. Element - nomi.
    Sinf elementlari sinfga tegishli funksiyalarida ishlatilishidan oldin ta’riflangan bo’lishi shart emas. Xuddi shunday bir funksiyadan hali ta’rifi berilmagan ikkinchi funksiyaga murojaat qilish mumkin.
    Komponentalarga murojaat huquqlari.
    Komponentalarga murojaat huquqi murojaat spesifikatorlari yordamida boshqariladi. Bu spesifikatorlar:
    protected – himoyalangan;
    private – xususiy;
    public – umumiy;
    Himoyalangan komponentalardan sinflar ierarxiyasi qurilganda foydalaniladi.
    Oddiy holda protected spesifikatori private spesifikatoriga ekvivalentdir. Umumiy
    ya’ni public turidagi komponentalarga dasturning ixtiyoriy joyida murojaat qilinishi mumkin. Xususiy ya’ni private turidagi komponentalarga sinf tashqarisidan murojaat qilish mumkin emas. Agar sinflar struct xizmatchi so’zi bilan kiritilgan bo’lsa, uning hamma komponentalari umumiy public bo’ladi, lekin bu huquqni murojaat spesifikatorlari yordamida o’zgartirish mumkin.
    Download 15.02 Kb.




    Download 15.02 Kb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    Sinf-struktura tushunchasi kengaytmasi sifatida

    Download 15.02 Kb.