15-мавзу. Grafik va multimediya dasturlash tizimlarini qo’llash. Reja
Download 367.41 Kb. Pdf ko'rish
|
15-mavzu
Dinamik xotira haqida
# include mavjudki, ular yordamida chizmalarni ekran bo’ylab xarakatga keltirish mumkin. Figuralarni xarakatga keltirishning bir necha usullari bor. Ulardan biri xarakatni takrorlanish buyrug’i orqali tashkilkilishdir. Ikkinchi usul ekranda chizilgan chizma joylashgan soxani massiv ko’rinishida eslab qolib, uni maxsus protsedura yordamida ekranning kerakli nuqtasiga ko’chirishdir. Bunda dinamik xotiradan foydalaniladi. Katta miqdordagi ma’lumotlar ishlatiladigan masalalarni yechishda, kompyuterning grafik imkoniyatlaridan foydalanganimizda xotira xajmi yetishmasligi mumkin. Bunday xollarda dinamik xotira juda qo’l keladi. Dinamik xotira bu kompyuterning dasturga ma’lumotlar segmentidan tashkari yuklatilgan tezkor xotiradir. Bu xotira taxminan 200-300 Kb ni tashkil qiladi. Dinamik xotiradan foydalanish uchun ko’rsatkichlar ishlatiladi. Bu o’zgaruvchilarni (kursatkichlarni) xotirada joylashtirishni kompilyator amalga oshiradi. Kursatkich shunday o’zgaruvchiki, uning qiymati o’zgaruvchi qiymatiga emas, balki shu o’zgaruvchi joylashgan xotira adresiga tengdir. Dinamik xotira soxasidan joy ajratish uchun new operatori ishlatiladi. Bu suzdan keyin xotiraga joylashtiriladigan ob’ektti pi aniqlanadi. Masalan: new int ; deb yozsak, dinamik xotiradan 2 bayt joy ajratgan bo’lamiz. Masalan: int *p; p = new int ; yoki int *p = new int ; Ajratilgan xotira soxasiga biror qiymatni joylashtirish mumkin: *r = 750 ; Bu yozuvni quyidagicha o’qiladi: « r ko’rsatkichida adresi saqlanayotgan xotiraga 750 sonini yozing ». Dinamik xotira soxasi chegaralangan, u to’lib qolganda new operatori orqali joy ajratish xatolikka olib keladi. Bu xolni biz xotiraning to’lib ketishi yoki oqib ketishi deymiz (utechka pamyati). Shuning uchun xotira boshqa kerak bo’lmasa uni bo’shatish zarurdir. Buni delete operatori yordamida bajariladi. Masalan: delete p; Download 367.41 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling