Sinflar qoliplari, ularni yaratish va ishlatish



Download 15,63 Kb.
Sana22.05.2023
Hajmi15,63 Kb.
#942124
Bog'liq
SINFLAR QOLIPLARI


SINFLAR QOLIPLARI, ULARNI YARATISH VA ISHLATISH
REJA:

  1. Sinflar haqida ma'lumot.

  2. Sinflarning yaratilishi.

Sinf-struktura tushunchasi kengaytmasi sifatida. Sinflarni eng sodda holda quyidagicha tasvirlash mumkin:


Sinf-kaliti Sinf-soni {komponentalar ro‘yxati}
Sinf komponentalari sodda holda tiplangan ma’lumotlar va funksiyalardan iborat bo‘ladi. Figurali kavslarga olingan komponentalar ro‘yxati Sinf tanasi deb ataladi. Sinfga tegishli funksiyalar komponenta-funksiyalar yoki sinf funksiyalari deb ataladi.
Sinf kaliti sifatida Struct xizmatchi so‘zi ishlatilishi mumkin. Masalan quyidagi konstruksiya kompleks son sinfini kiritadi.
struct complex
{
double real;
double imag;
void define (double re=0.0, double im=0.0)
{
real=re; imag=im;
}
void display (void)
{
cout<=”real=”<cout<=”imag=”<}
};
Strukturadan bu sinfning farqi shuki komponenta ma’lumotlardan (real, imag) tashqari ikkita komponenta funksiya (define() va display ()) kiritilgan.
Bu kiritilgan sinf o‘zgaruvchilar tipi deb karalishi mumkin. Bu tiplar erdamida konkret ob’ektlarni quyidagicha tasvirlash mumkin:
Misol uchun:
complex x,y;
complex dim[8];
Sinfga tegishli ob’ektlar quyidagicha tasvirlanadi;
SINF-NOMI.OB’EKT-NOMI
Dasturda ob’ekt komponentasiga quyidagicha murojat kilish mumkin:
Sinf-nomi.ob’ekt-nomi :: komponenta-nomi yoki soddarok holda
Ob’ekt-nomi. Element-nomi
Misol uchun:
x.real=1.24;
x.imag=0.0;
dim[3]. Real=0.25;
dim[3]. Imag=0.0;
Sinfga tegishli funksiyalarga quyidagicha murojat qilinadi:
ob’ekt-nomi. funksiya-nomi
Misol uchun:
X. define(0.9) (Bu holda real=0.9 va imag=0.0)
X. define(4.3,20.0) (Bu holda kompleks son 4.3+i*20.0)
Display funksiyasi ekranda kompleks son qiymatlarini tasvirlaydi.
Komponenta o‘zgaruvchilar va komponenta funksiyalar.Sinf kompanenta o‘zgaruvchilari sifatida o‘zgaruvchilar , massivlar, ko‘rsatkichlar ishlatilishi mumkin. Elementlar ta’riflanganda initsializatsiya kilish mumkin emas. Buning sababi shuki sinf uchun xotiradan joy ajratilmaydi. Kompanenta elementlariga kompanenta funksiyalar orkali murojat qilinganda faqat nomlari ishlatiladi Sinfdan tashqarida sinf elementlariga emas ob’ekt elementlariga murojat kilish mumkin . Bu murojat ikki xil bo‘lishi mumkindir.
Ob’ekt- nomi . Element - nomi.
Sinf elementlari sinfga tegishli funksiyalarida ishlatilishidan oldin ta’riflangan bo‘lishi shart emas. Xuddi shunday bir funksiyadan xali ta’rifi berilmagan ikkinchi funksiyaga murojaat kilish mumkin.
Komponentalarga murojaat xukuklari. Komponentalarga murojaat xuquqi murojaat spetsifikatorlari yordamida boshkariladi. Bu spetsifikatorlar:
Protected – ximoyalangan;
Private – xususiy;
Public – umumiy;
Ximoyalangan kompanentalardan sinflar ierarxiyasi qurilganda foydalaniladi. Oddiy holda Protected spetsifikatori Private spetsifikatoriga ekvivalentdir. Umumiy ya’ni Public tipidagi komponentalarga dasturning ixtiyoriy joyida murojaat kilinishi mumkin.
Xususiy ya’ni Private tipidagi komponentalarga sinf tashqarisidan murojaat qilish mumkin emas. Agar sinflar Struct xizmatchi so‘zi bilan kiritilgan bo‘lsa, uning hamma komponentalari umumiy Public bo‘ladi, lekin bu xuquqni murojaat spetsifikatorlari yordamida o‘zgartirish mumkin.
Agar sinf Class xizmatchi so‘zi orkali ta’riflangan bo‘lsa, uning hamma komponentalari xususiy bo‘ladi. Lekin bu xuquqni murojaat spetsifikatorlari yordamida o‘zgartirish mumkindir.
Bu spetsifikator yordamida sinflar umumiy holda quyidagicha ta’riflanadi:
class class_name
{
int data_member; // Ma’lumot-element
void show_member(int); // Funksiya-element
};
Sinf ta’riflangandan so‘ng, shu sinf tipidagi o‘zgaruvchilarni(ob’ektlarni) quyidagicha ta’riflash mumkin:
class_name object_one, object_two, object_three;
Quyidagi misolda employee, sinfi kiritilgandir:
class employee
{
public:
long employee_id;
float salary;
void show_employee(void)
{
cout<<"Nomer: "<cout<<"Maosh: "<};
};
Bu sinf ikki o‘zgaruvchi va bitta funksiya-elementga ega.
Download 15,63 Kb.

Do'stlaringiz bilan baham:




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