Ma’ruza rejasi




Download 17.33 Kb.
Sana19.06.2022
Hajmi17.33 Kb.
#24006
Bog'liq
15-maruza. operatorlarni qayta yuklash(1)
Kompton effekti Nazariy kelib chiqishi

15-Ma’ruza. Operator va funksiyalarni qayta yuklash



Ma’ruza rejasi:



1. Funksiyalarni qayta yuklash;
2. Operatorlarni qayta yuklashda qo’llanilishi.


Kalit so’zlar:, ro’yxat, manzil, nolinchi ko’rchsatkich, tugun, adres olish &, bo’shatish, ko’rsatkich, virtual destruktor, xotira, xotira chiqishi, destruktor, toifani o’zlashtirish, Inkapsulyasiya, inline, polimorfizm, vorislik, meros sinflar, virtual funksiyalar, MSINF a’zo destruktori.

Funksiyalarni qayta yuklash
C++ 3-darslik FUNKSIYALAR C++ da dasturlashning asosiy bloklaridan biri funksiya-lardir. Funksiyalarning foydasi shundaki, katta masala bir necha kichik bo'laklarga bo'linib, har biriga alohida funksiya yozilganda, masala yechish algoritmi ancha soddalashadi. Bunda dasturchi yozgan funksiyalar C ++ ning standart kutubhonasi va boshqa firmalar yozgan kutub- honalar ichidagi funksiyalar bilan birlashtiriladi. Bu esa ishni osonlashtiradi. Ko'p holda dasturda takroran bejariladigan amalni funksiya sifatida yozish va kerakli joyda ushbu funksiyani chaqirish mumkin. Funksiyani programma tanasida ishlatish uchun u chaqiriladi, yani uning ismi yoziladi va unga kerakli argumentlar beriladi. () qavslar ushbu funksiya chaqirig'ini ifodalaydi. Masalan: foo(); k = square(l); Demak, agar funksiya argumentlar olsa, ular () qavs ichida yoziladi. Argumentsiz funksiyadan keyin esa () qavslarning o'zi qo'yiladi. MA'LUMOTLAR TIPI (DATA TYPES) Shu paytgacha ma'lumotlar tipi deganda butun son va kasrli son bor deb kelgan edik. Lekin bu bo'limda maylumotlar tipi tushunchasini yahshiroq ko'rib chiqish kerak bo'ladi. Chunki funksiyalar bilan ishlagandaargument kiritish va qiymat qaytarishga to'g'ri keladi.
Agar boshidan boshlaydigan bo'lsak, kompyterda hamma turdagi ma'lumotlar 0 va 1 yordamida kodlanadi. Buning sababi shuki, elektr uskunalar uchun ikki holat tabiyi-dir, tok oqimi bor yoki yo'q, kondensatorda zaryad bor yoki yo'q
va hakozo. Demak biz bu holatlarni oladigan jihozlarni bir quti deb faraz
qilsak, quti ichida yo narsa bo'ladi, yo narsa bo'lmaydi. Mantiqan buni biz bir
yoki nol deb belgilaymiz. Bu kabi faqat ikki holatga ega bo'lishi mumkin bo'lgan maylumot birligiga biz BIT deymiz. Bu birlik kichik bo'lgani uchun kompyuterda bitlar guruhi qo'llaniladi. Bittan keyingi birlik bu BAYT (byte).
Baytni sakkizta bit tashkil etadi. Demak bir bayt yordamida biz 256 ta holatni
kodlashimiz mumkin bo'ladi. 256 soni ikkining sakkizinchi darajasiga
tengdir. Bitimiz ikki holatga ega bo'lgani uchun biz kompyuterni ikkili arifmetikaga asoslangan deymiz. Ammo agar kerak bo'lsa, boshqa sistemaga asoslangan mashinalarni ham qo'llash mumkin.
Masalan uchli sanoq sistemasiga asoslangan kompyuterlar bor.
Informatika faniga ko'ra esa, hisoblash mashinasi uchun eng
optimal sanoq sistemasi e ga teng bo'lar ekan. Demak amaldagi sistemalar ham shu songa iloji borisha yaqin bo'lishi kerakdir. C/C++ da baytga asoslangan tip char dir. char tipi butun son tipida bo'lib, chegaraviy qiymatlari -128 dan +127
gachadir. Bu tip lotin alifbosi harflarini va y ana qo'shimcha bir guruh simvollarni kodlashga qulay bo'lgan. Lekin hozirda milliy alifbelarni kodlash
uchun 16 bitlik UNICODE qo'llanilmoqda. U yordamida 65536 ta
simvolni ko'rsatish mumkin. char tipida o'zgaruvchi e'lon qilish uchun dasturda
char g, h = 3, s; kabi yozish kerak. O'zgaruvchilar vergul bilan ayriladi. E'lon bilan bir vaqtning o'zida boshlang'ich qiymat ham berish imkoni bor. Mashina ichida baytdan tashkil topgan boshqa kattaliklar ham bor. Ikki baytdan tuzilgan kattalik so'z (word) deyiladi, unda 16 bit bo'ladi. 4 ta bayt guruhi esa ikkili so'z (double word) bo'ladi. Bu birlik 32 bitli mashimalarda qo'llaniladi. Hozirda qo'llanilmoqda bo'lgan mashinalar asosan 32 bitlidir, masalan Pentium I/II/III sistemalari. C ++ da butun sonlarning ikki tipi bor.


Operatorlarni qayta yuklashda qo’llanilishi.
Biri char - uni ko'rib chiqdik. Ikkinchisi int dir. Mashinalarning arhitekturasi qanday kattalikda bo'lsa, int tipining ham kattakigi huddi shunday bo'ladi. 16 bitlik mashinalarda int 16 bit edi. Hozirda esa int ning uzunligi 32 bitdir. int (integer - butun son) tipi charga o'hshaydi. Farqi bir baytdan kattaligidadir. 16 bitli int ning sig'imi -32768 dan +32767 gachadir. 32 bitli int esa -2 147 483 648 dan +2 147 483 647 gacha o'rin egallaydi. Bu ikki butun son tipidan tashqari C++ da ikki tur vergulli, (nuqtali) yani haqiqiy son tipi mavjud. Bulardan biri float, hotirada 4 bayt joy egallaydi.
Ikkinchisi esa double, 8 bayt kattalikka ega. Bularning harakteristikalari quyidagi jadvalda berilgan. Ushbu tiplar bilan ishlaganda unsigned(ishorasiz, +/- siz), signed (ishorali) long (uzun) va short (qisqa) sifatlarini qo'llasa bo'ladi. unsigned va signed ni faqat butun son tiplari bilan qo'llasa bo'ladi. unsigned

Nazorat savollari:

  1. Inkapsulyasiya nima?

  2. Inkapsulyasiya qanday ishlatiladi?

  3. Ob’yektga yo’naltirilgan dasturlash prinsiplar qaysilar?

  4. Virtual funksiyalar qanday ishlaydi?

  5. Virtual funksiyani qolganlaridan farqini sanang.

Download 17.33 Kb.




Download 17.33 Kb.