Javoblar Dasturlash asoslari


Birinchidan, m_ prefiksli o'zgaruvchini ko'rganimizda, biz sinf a'zolari o'zgaruvchisi bilan ishlayotganimizni tushunamiz; Ikkinchidan



Download 132,23 Kb.
bet16/40
Sana06.07.2022
Hajmi132,23 Kb.
#743820
1   ...   12   13   14   15   16   17   18   19   ...   40
Bog'liq
Javoblar Dasturlash asoslari

Birinchidan, m_ prefiksli o'zgaruvchini ko'rganimizda, biz sinf a'zolari o'zgaruvchisi bilan ishlayotganimizni tushunamiz;
Ikkinchidan, funksiya parametrlari yoki funksiya ichida e'lon qilingan lokal o'zgaruvchilardan farqli o'laroq, a'zo o'zgaruvchilar sinf ta'rifida e'lon qilinadi. Shuning uchun, agar biz m_ prefiksli o'zgaruvchining qanday e'lon qilinishini bilmoqchi bo'lsak, biz funksiya ichida emas, balki sinf ta'rifiga qarashimiz kerakligini tushunamiz.
47.Sinflar tarkibida setterlardan foydalanish va unga oid misollar.
Sinfga qarab, sinfning yopiq a'zolari o'zgaruvchilarining qiymatlarini olish / o'rnatish imkoniyatiga ega bo'lish mumkin (sinf nima qilayotgani nuqtai nazaridan).Kirish funksiyasi - bu qisqa umumiy funksiya, uning vazifasi sinfning yopiq a'zolarining o'zgaruvchisini olish yoki o'zgartirishdir. Masalan:
class MyString
{
private:
char *m_string; // dinamik ravishda qatorni ajratish
int m_length; // satr uzunligini kuzatish uchun o'zgaruvchidan foydalaning

public:
int getLength() { return m_length; } // m_length qiymatini olish uchun kirish funktsiyasi


};

Bu yerda getLength () - bu m_length qiymatini qaytaradigan kirish funksiyasi.


Odatda kirish funksiyalari ikki xil bo'ladi:




getterlar - bu sinfning yopiq a'zo o'zgaruvchilarining qiymatlarini qaytaradigan funksiyalar;
setterlar - bu sinfning yopiq a'zo o'zgaruvchilariga qiymatlarni belgilashga imkon beradigan funksiyalar.
Bu yerda barcha yopiq a'zo o'zgaruvchilari uchun getter va setterlardan foydalanadigan sinfning misoli:
class Date
{
private:
int m_day;
int m_month;
int m_year;
public:
int getDay() { return m_day; } // day uchun getter
void setDay(int day) { m_day = day; } // day uchun setter
int getMonth() { return m_month; } // month uchun getter
void setMonth(int month) { m_month = month; } // month uchun setter
int getYear() { return m_year; } // year uchun gettter
void setYear(int year) { m_year = year; } // year uchun setter
};
48. Sinflar tarkibida gettrlardan foydalanish va unga oid misollar.

Odatda kirish funksiyalari ikki xil bo'ladi:


1. getterlar - bu sinfning yopiq a'zo o'zgaruvchilarining qiymatlarini qaytaradigan funksiyalar; 2. setterlar - bu sinfning yopiq a'zo o'zgaruvchilariga qiymatlarni belgilashga imkon beradigan funksiyalar.
Bu yerda barcha yopiq a'zo o'zgaruvchilari uchun getter va setterlardan foydalanadigan sinfning misoli:

class Date { private: int m_day; int m_month; int m_year; public: int getDay() { return m_day; } // day uchun getter void setDay(int day) { m_day = day; } // day uchun setter int getMonth() { return m_month; } // month uchun getter void setMonth(int month) { m_month = month; } // month uchun setter int getYear() { return m_year; } // year uchun gettter void setYear(int year) { m_year = year; } // year uchun setter }; Bu sinfda hech qanday muammo yo'q, shuning uchun foydalanuvchi to'g'ridan -to'g'ri ushbu sinfning yopiq a'zo o'zgaruvchilariga qiymatlarni olishi yoki belgilashi mumkin, chunki to'liq qabul qiluvchilar va sozlovchilar to'plami mavjud. MyString sinfidagi misolda, m_length o'zgaruvchisi uchun sozlovchi ta'minlanmagan, chunki foydalanuvchi uzunlikni to'g'ridan-to'g'ri o'rnatishga hojat yo'q edi.


49. Spetsifikatorlarga kirish

Download 132,23 Kb.

Do'stlaringiz bilan baham:
1   ...   12   13   14   15   16   17   18   19   ...   40




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