• 6-amaliy mashg`ulot Mavzu
  • Ishdan maqsad
  • Qo‘yilgan masala
  • Guruh Raqam F. I. O




    Download 229.6 Kb.
    bet1/2
    Sana16.12.2022
    Hajmi229.6 Kb.
    #35195
      1   2
    Bog'liq
    2-deadline(Ma`lumotlar tuzilmasi)


    Guruh

    Raqam

    F.I.O

    660-21









    6-amaliy mashg`ulot


    Mavzu: Sinflarni qo’llash. Sinflarning konstruktor va destruktorlari.

    Qayta yuklash va qayta aniqlash usullari. Sinflarni qo’llash. Sinflarning konstruktor va destruktorlari. Qayta yuklash va qayta aniqlash usullari. Sinflarni qo’llash. Do’stona va virtual funksiyalar.




    Ishdan maqsad: Ushbu laboratoriya ishining maqsadi talabalar Sinflar mavjudligini va ularning samaradorliklarini baholashni o‘rganishlari kerak. Shu asosda sinflar usullarini qiyosiy tahlil qilishlari, C++ dasturlash tilida sinflar bilan ishlashni va ularga oid dasturlar tuzishni o‘zlashtirishlari kerak.


    Qo‘yilgan masala: Talabalar topshiriq variantiga mos vektorlar yordamida masalani yechish dasturini yaratish ko‘nikmasiga ega bo‘lishlari kerak.


    Ish tartibi:
    1.Tajriba ishi nazariy ma’lumotlarini o‘rganish;
    2. Berilgan topshiriqning algoritmini ishlab chiqish;
    3. C++ dasturlash muhitida dasturni yaratish;
    4. Natijalarni tekshirish;
    5. Hisobotni tayyorlash va topshirish.
    Sinf: C ++ dagi sinf - bu Ob'ektga yo'naltirilgan dasturlashga olib keladigan qurilish bloki. Bu foydalanuvchi tomonidan aniqlangan ma'lumotlar turi, o'z ma'lumot a'zolari va a'zo funktsiyalarini o'zida mujassam etgan, ularga kirish va shu sinfning nusxasini yaratish orqali foydalanish mumkin. C ++ klassi ob'ekt uchun rejaga o'xshaydi.


    Masalan: Avtomobillar sinfini ko'rib chiqing. Turli xil nomdagi va markali avtomobillar ko'p bo'lishi mumkin, ammo ularning barchasi bir nechta umumiy xususiyatlarga ega, chunki ularning barchasi to'rtta g'ildirak, tezlik chegarasi, yurish masofasi va boshqalar. ularning xususiyatlari. Sinf - bu foydalanuvchi tomonidan aniqlangan ma'lumotlar turi, unda ma'lumotlar a'zolari va a'zo funktsiyalari mavjud. 2. Ma'lumotlar a'zolari - bu ma'lumotlar o'zgaruvchilari, a'zo funktsiyalari - bu o'zgaruvchilarni boshqarish uchun ishlatiladigan funktsiyalar va bu ma'lumotlar a'zolari va a'zo funktsiyalari birgalikda Class sinfidagi ob'ektlarning xususiyatlarini va xatti-harakatlarini belgilaydilar. 3. Avtomobil sinfining yuqoridagi misolida ma'lumotlar a'zosi tezlik chegarasi, yurish masofasi va boshqalar bo'ladi va funktsiyalar tormoz bosishi, tezlikni oshirishi va h.k.Ob'ekt - bu Class namunasi. Sinf aniqlanganda, hech qanday xotira ajratilmaydi, lekin u o'rnatilganda (ya'ni ob'ekt yaratiladi) xotira ajratiladi. Sinfni aniqlash va e'lon qilinadigan ob'ektlar C ++ da sinf kalit so'zlar yordamida sinfning nomi va undan keyin sinf nomi bilan belgilanadi. Sinfning tanasi jingalak qavs ichida aniqlanadi va oxirida nuqtavergul bilan tugaydi. Ob'ektlarni e'lon qilish: sinf aniqlanganda faqat ob'ekt uchun spetsifikatsiya aniqlanadi; xotira yoki xotira ajratilmagan. Sinfda aniqlangan ma'lumotlar va kirish funktsiyalaridan foydalanish uchun siz ob'ektlarni yaratishingiz kerak. Ma'lumotlar a'zolari va a'zo funktsiyalariga kirish: sinfning ma'lumotlar a'zolari va a'zo funktsiyalariga ob'ekt bilan nuqta ('.') Operatori yordamida kirish mumkin. Masalan, agar ob'ekt nomi obj bo'lsa va siz printName () nomi bilan a'zoning funktsiyasiga kirishni xohlasangiz, obj.printName () yozishingiz kerak bo'ladi. Ma'lumotlar a'zolariga kirish Umumiy ma'lumotlar a'zolariga ham xuddi shu tarzda kirish mumkin, ammo shaxsiy ma'lumotlar a'zolariga ob'ekt tomonidan to'g'ridan-to'g'ri kirishga ruxsat berilmaydi. Ma'lumot a'zosiga kirish faqat ushbu ma'lumotlar a'zosining kirishini boshqarish bilan bog'liq. Ushbu kirishni boshqarish C ++ da Access modifikatorlari tomonidan beriladi. Kirishning uchta modifikatori mavjud: jamoat, xususiy va himoyalangan. public, private va protected.

    #include


    using namespace std;


    class Geeks


    {
    // Kirish spetsifikatori
    public:
    // Ma'lumotlar a'zolari
    string geekname;
    // Funksiya() azolari
    void printname ()
    {
    cout << "Geekname bu: " << geekname;
    }
    };
    int main ()
    {
    // Geeks sinfi ob'ektini e'lon qilish
    Geeks obj1;
    // ma'lumotlar a'zosiga kirish
    obj1.geekname = "Abhi";
    // a'zo funktsiyasiga kirish
    obj1.printname ();
    return 0;
    }



    Download 229.6 Kb.
      1   2




    Download 229.6 Kb.