Butun, haqiqiy


Download 1.28 Mb.
bet18/22
Sana15.06.2023
Hajmi1.28 Mb.
#1479408
1   ...   14   15   16   17   18   19   20   21   22
Bog'liq
C tilida o‘zgarmaslar

# include < iostream.h >
class non
{ public :
 int baho;
 int ogirlik;
 void yasash ( ); };
int main ( ){
 non patir;
patir.baho = 1200; patir.ogirlik = 500;
cout <<“men olgan patir” <

cout <<“uning og‘irligi =”<

32. inline funksiyalar.


C++ tilida inline funksiyalarni yartishning turli usullari mavjud. Ko’pincha inline funksiyalar class lar bilan ishlatiladi. C++ da qisqa funksiyalarni ishlatganda ular chaqirilmaydi. Uning o’rniga ularning kodi chaqirilgan joyga qo’yiladi. Bu jarayon macro-funksiyalarni ishlatishga o’xshaydi. Funksiyani chaqirmaslik uchun inline kalit so’zi ishlatiladi.


C++ tilida inline funksiyalar ishlatish imkoniyati mavjud. Ko’pincha inline funksiyalar class’lar bilan ishlatiladi. C++ da qisqa funksiyalarni ishlatganda ular chaqirilmaydi aks holda ularning kodi chaqirilgan joyga qo’yiladi. Bu jarayon macro-funksiyalarni ishlatishga o’xshaydi.
Funksiyani chaqirmaslik uchun inline kalit so’zi ishlatiladi

33. Inkapsulyasiya tushunchasi.


Inkapsulyasiya – bu berilganlar va ularni qayta ishlovchi kodni birlashtirish mehanizmi. Inkapsulyasiya berilganlar va kodni tashqi ta’sirdan saqlash imkonini beradi. Yuqoridagi ikkita konsepsiyani amalga oshirish uchun C++ tilida sinflar ishlatiladi. Sinf termini bilan obyektlar turi aniqlanadi. Sinfning har bir vakili (nushasi) obyekt deb nomlanadi. Har bir obyekt o‘zining alohida holatiga ega bo‘ladi. Obyekt holati uning berilganlar-a’zolarning ayni paytdagi qiymati bilan aniqlanadi. Sinf vazifasi - uning funksiyaa’zolarining sinf obyektlari ustida bajaradigan amallar imkoniyati bilan aniqlanadi.
34. Vorislik tushunchasi.
Vorislik – bu shunday jarayonki, unda bir obyekt boshqasining xossalarini o‘zlashtiradi. Vorislik orqali mavjud sinflar asosida hosilaviy sinflarni qurish mumkin bo‘ladi. Sinf–avlod - o‘zining ota sinfidan (Sinf-ajdod) berilganlar va funksiyalarni vorislik bo‘yicha oladi, hamda ular qatoriga faqat o‘ziga xos bo‘lgan qirralarini amalga oshirishgan imkon beruvchi berilgan va funksiyalarni qo‘shadi. Ajdod sinfdagi himoyalangan berilgan-a’zolarga va funksiya-a’zolariga ajdod sinfda murojaat qilish mumkin bo‘ladi. Vorislik asosida bir-biri bilan «ota-bola» munosabatidagi sinflar shajarasini yaratish mumkin. Tayanch sinf termini sinflar shajarasidagi ota sinf sinonimi sifatida ishlatiladi. Agar obyekt o‘z atributlarini (berilganlar-a’zolar va funksiyalar–a’zolar) faqat bitta ota sinfdan vorislik bilan olsa, yakka (yoki oddiy) vorislik deyiladi. Agar obyekt o‘z atributlarini bir nechta ota sinflardan olsa, to‘plamli vorislik deyiladi.
35. Polimorfizm tushunchasi
Polimorfizm –bu kodni bajarilish paytidan yuzaga keladigan holatga bog‘liq ravishda o‘zini turlicha amal qilish xususiyatidir. Polimorfizm – bu faqat obyektlar xususiyati bo‘lmasdan, balki funksiyalar-a’zolar xususiyatidir. Bu holatga funksiyalarni qayta yuklash deyiladi. Polimorfizm amallarga ham qo‘llanishi mumkin, ya’ni amal mazmuni (natijasi) operand (berilgan) turiga bog‘liq bo‘ladi. Polimorfizmning bunday turiga amallarni qayta yuklash deyiladi
Polimorfizm yana bir ta’rifi quyidagicha: polimorfizm – bu tayanch sinfga ko‘rsatkichlarning (murojaatlarning), ularni virtual funksiyalarini chaqirishdagi turli shakl (qiymatlarni) qabul qilish imkoniyatidir. C++ tilining bunday imkoniyati kechiktirilgan bog‘lanish natijasidir. Kechiktirilgan bog‘lanishda chaqiriladigan funksiya-a’zolar adreslari programma bajarilishi jarayonida dinamik ravishda aniqlanadi. An’anaviy programmalash tillarida esa bu adreslar statik bo‘lib, ular kompilyasiya paytida aniqlanadi (oldindan bog‘lanish). Kechiktirilgan bog‘lanish faqat virtual funksiyalar uchun o‘rinli.
36. Inkapsulyasiya nima?
Inkapsulyasiya – bu berilganlar va ularni qayta ishlovchi kodni birlashtirish mehanizmi. Inkapsulyasiya berilganlar va kodni tashqi ta’sirdan saqlash imkonini beradi. Yuqoridagi ikkita konsepsiyani amalga oshirish uchun C++ tilida sinflar ishlatiladi. Sinf termini bilan obyektlar turi aniqlanadi. Sinfning har bir vakili (nushasi) obyekt deb nomlanadi. Har bir obyekt o‘zining alohida holatiga ega bo‘ladi. Obyekt holati uning berilganlar-a’zolarning ayni paytdagi qiymati bilan aniqlanadi. Sinf vazifasi - uning funksiyaa’zolarining sinf obyektlari ustida bajaradigan amallar imkoniyati bilan aniqlanadi.
37. Sinf xususiyatlari va metodlari.
Odatda sinf tavsifida qismi shart emas. Sinf obyektlari keyinchalik, zarurat bo‘yicha e’lon qilinishi mumkin. Garchi qismi ham majburiy bo‘lmasa ham, uning bo‘lgani ma’qul. Chunki berilganlar turining yangi nomi bo‘lib, uning yordamida shu sinf obyektlari aniqlanadi. Sinf ichida e’lon qilingan funksiya va berilganlar shu sinf a’zolari hisobalandi. Sinf e’lonining ichida e’lon qilingan o‘zgaruvchilar berilgan-a’zolar, sinf ichida e’lon qilingan funksiyalar funksiya–a’zolar deyiladi.
38. Sinf elementlariga murojaat huquqlari.
Garchi int get_a() va void set_a(int_num) funksiyalari Sinf_1 ichida e’lon qilingan bo‘lsa ham, ular hali aniqlangani yo‘q. Funksiyani aniqlash uchun sinf nomi va «::» belgilarini yozish orqali amalga oshiriladi. Bu yerda «::» – ko‘rish sohasini kengaytirish amali deyiladi. Funksiya-a’zoni aniqlashning umumiy shakli quyidagicha: 1. :: () 2. { 3. // funksiya tanasi 4. }
39. Konstruktor nima.

Download 1.28 Mb.

Do'stlaringiz bilan baham:
1   ...   14   15   16   17   18   19   20   21   22




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling