O. X. Azamatov


 O‘zaro do‘st funksiyalar va sinflar



Download 1,82 Mb.
Pdf ko'rish
bet63/119
Sana19.07.2021
Hajmi1,82 Mb.
#123208
1   ...   59   60   61   62   63   64   65   66   ...   119
Bog'liq
3072-Текст статьи-7829-1-10-20200908

7.3. O‘zaro do‘st funksiyalar va sinflar 
Agarda  bir  nechta  sinf  funksiyalariga  boshqa  sinfning  xususiy  ma’lumotlariga 
murojaat  qilish  kerak  bo‘lsa,  u  holda  C++  do‘stona  sinfning  faqatgina  belgilangan 
funksiyalari  xususiy  elementlarga  murojaat  etishiga  imkoniyat  beradi.      Masalan, 
faqatgina  change_catalog  va  get_catalog  funksiyalarga  book  sinfning  xususiy 
elementlariga murojaat kerak. Quyida ko‘rsatilgandek, book sinfning ichida faqatgina 
shu funksiyalarda xususiy funksiyalarga murojaat chegarasini qo‘yishi lozim: 
class book  

public: 
   book(char *, char *, char *); 
   void show_book(void); 


65 
 
   friend char *librarian::get_catalog(book); 
   friend void librarian: :change_catalog( book *, char *); 
private: 
   char title[64]; 
   char author[ 64 ]; 
   char catalog[64]; 
}; 
Ko‘rib turganimizdek  friend operatorlari xususiy  elementlarga  murojat qiluvchi 
hamma do‘st funksiyalarini to‘liq prototiplarini o‘z ichiga oladi.  
Agar  dastur  bir  sinfdan  boshqasiga  murojaat  qilsa    va  sinflar  aniqlanish  tartibi 
noto‘g‘ri  bo‘lsa  sintaksik  xatoga  duch  kelish  mumkin.  Bizning  holda  book  klassi 
librarian klassida e’lon qilingan funksiyalar prototiplariga murojat qilmoqda. Shuning 
uchun librarian klassi aniqlanishi book klassi aniqlanishidan oldin kelishi kerak, biroq 
librarian klassi book klassiga murojat qilmoqda: 
class librarian  

public: 
   void change_catalog(book *, char *); 
   char *get_catalog(book); 
}; 
book klassi aniqlanishini librarian klassi aniqlanishidan oldini qo‘yib bo‘lmagani 
uchun. C++ book klassini e’lon qilish imkonini beradi va shu bilan u kompilyatorga 
bunday  klass  borligi  xaqida  xabar  beradi  va  keyinroq  o‘zi  ham  aniqlanadi.  Quyida 
buni qanday amalga oshirish keltirilgan: 
class book; // sinf elon qilinishi 

Download 1,82 Mb.

Do'stlaringiz bilan baham:
1   ...   59   60   61   62   63   64   65   66   ...   119




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

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish