O. X. Azamatov
Download 1.82 Mb. Pdf ko'rish
|
3072-Текст статьи-7829-1-10-20200908
6.4. This ko‘rsatkichi
Agarda konkret obyektga ishlov berish uchun sinf a’zosi – funksiya chaqirilsa, unda shu funksiyaga obyektga belgilangan ko‘rsatkich avtomatik va ko‘rsatilmagan holda uzatiladi. Bu ko‘rsatqich this ismiga ega va x* this kabi har bir funksiya uchun ko‘rsatilmagan holda belgilanadi. Х sinfni ekvivalent ko‘rinishda shunday tavsiflash mumkin: class x { int m; public: int readm() { return this->m; } }; A’zolarga murojaat etishda this dan foydalanish ortiqcha. Asosan this bevosita ko‘rsatkichlar bilan manipulyatsiya qilish uchun a’zo funksiyalarini yaratilishida foydalaniladi. Har qaysi obyekt sinf maydonining o‘z nusxasiga ega. Sinf usuli xotirada bitta nusxada bo‘ladi va hamma obyektlar bilan birgalikda ishlatiladi. Shuning uchun usullarni maydonlar bilan ishini tashkil etishda chaqirilayotgan obyekt uchun ta’minlanishiga e’tibor berish kerak. Bu esa yashirin this parametrini funksiyaga o‘zatishni ta’minlaydi. this ko‘rsatkichi noaniq ravishda usulning ichkarisida foydalaniladi. Aniq holatda esa bu ko‘rsatkich usuldagi ko‘rsatkichni hisoblashda 59 (return this;) yoki chaqirilayotgan obyektga (return *this;) murojaatlarda qo‘llaniladi. Quyida this ko‘rsatkich uchun misol keltiramiz: monstr & the_best(monstr &M){ if( health >M.health) return nhis; return M; ... monstr Vas1a(50). Super(200); //Best yangi obyekti Super maydoni qiymatlari bilan initsializiya qilinmoqda: monstr Best = Vasia.the_best(Super); this ko‘rsatkichini sinf usulning maydonini nomi formal parametrlar nomi bilan mos kelgan hollarda identifikatsiya qilishda qo‘llash mumkin. Identifikatsiyalashning boshqa usuli esa ko‘rinish sohasiga murojaat etishda qo‘llash mumkin: void curednt health. 1nt ammo){ this -> health += health; // this dan foydalanish monstr:: ammo += ammo; // :: amalidan foydalanish Download 1.82 Mb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling