• Turlar ierarxiyasi
  • Masala: C va D class ning maydonlariga murojaat




    Download 4,17 Mb.
    bet9/10
    Sana17.05.2024
    Hajmi4,17 Mb.
    #239108
    1   2   3   4   5   6   7   8   9   10
    Bog'liq
    amaliy ish

    Masala:


  • C va D class ning maydonlariga murojaat


  • Sinf ma'lum bir turning namunasi ekanligini aniqlash

  • uchun dynamic_cast-dan foydalanish:


  • Bir nechta merosni ko'rsatuvchi sinf ierarxiyasi

  • D turidagi obyektga ko'rsatgichni B yoki C ga xavfsiz uzatish mumkin. Ammo, agar turdan turga keltirish natijasida D obyekt A obyektiga ishora qilsa, A obyekti qaysi namunaga olib keladi?

  • Bu noaniq turdan turga keltirish xatoga olib kelishi mumkin. Ushbu muammoni hal qilish uchun siz ikkita aniq turdan turga keltirishni bajarishingiz mumkin.


  • Masala:

    Turlar ierarxiyasi:


    Turlar ierarxiyasi ga misol





      • static_cast operatori

      • Ifodani faqat iborada mavjud bo'lgan turlarga asoslanib, tur identifikatorini kiritish uchun o'zgartiradi.

      • Sintaksisi - static_cast ( expression );

      • Static_cast operatoridan ko'rsatgichni bazaviy sinfga va olingan sinfga ko'rsatgichga aylantirish kabi operatsiyalar uchun foydalanish mumkin. Bunday o'zgartirishlar har doim ham xavfsiz emas.

      • Umuman olganda, static_cast raqamli ma'lumotlarning turlarini o'zgartirish uchun ishlatiladi, masalan, sonlar yoki butun sonlarga raqamlar, suzuvchi nuqta raqamlari va konversiyada ishlatiladigan ma'lum ma'lumotlar turlari.


      • static_cast operatoriga misol


      • Misol tahlili

      • Dynamic_cast-dan farqli o'laroq, static_cast pb konversiyasida ish vaqti tekshiruvi amalga oshirilmaydi. Pb bilan ko'rsatilgan obyekt D turining obyekti bo'lmasligi mumkin, bu holda *pd2-dan foydalanish dahshatli oqibatlarga olib kelishi mumkin. Masalan, D sinfiga tegishli, ammo B sinfiga kirmaydigan funktsiyani chaqirish kirishning buzilishiga olib kelishi mumkin.


      • Download 4,17 Mb.
  • 1   2   3   4   5   6   7   8   9   10




    Download 4,17 Mb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    Masala: C va D class ning maydonlariga murojaat

    Download 4,17 Mb.