Sinf a’zolari. Inkapsilyatsiya Hafta: 2 Ma’ruza: 2



Yüklə 462,77 Kb.
səhifə1/4
tarix28.11.2023
ölçüsü462,77 Kb.
#135849
  1   2   3   4
Leksiya #2

Sinf a’zolari. Inkapsilyatsiya

Hafta: 2

Ma’ruza: 2

Fan: Dasturlash 2

Maqsad

Quyidagi tushunchalar bilan tanishish:

  • Sinf aniqlanishi va sinf implementatsiyasini ajratish
  • #ifndef direktivasi orqali bir nechta bosh(header) fayllarni qo’shishning oldini olish
  • Sinflarda inline funksiyalar
  • Ma’lumot maydonlarini inkapsulyatsiyalash uchun get va set funksiyalari yordamida ma’lumot maydonlarini private holatda e’lon qilish
  • Ma’lumot maydoni sohasini tushunish
  • Dasturiy ta’minotni ishlab chiqishda sinf abstraksiyasini qo’llash

1. Sinf aniqlanishidan(definition) sinf implementatsiyasini(implementation) ajratish

Sinf aniqlanishidan sinf implementatsiyasini bir biridan ajratish sinfga qo’shimchalar qo’shishni osonlashtiradi.

C++ da sinf implementatsiyasini sinf aniqlanishidan ajratish imkoniyati mavjud. Sinf aniqlanishi sinf shartnomasi bo’lsa, implementatsiyasi esa shu shartnoma shartlarini bajarishdir. Sinf aniqlanishida barcha ma’lumot maydonlari, konstruktor prototiplari va funksiyalar prototiplari ro’yxati bo’ladi. Sinf implementatsiyasida esa konstruktorlar va funksiyalar implementatsiya qilinadi. Sinf aniqlanishi va sinf implementatsiyasi ikkita alohida faylda yozilsishi mumkin. Ikki fayl ham bir xil nomda bo’lishi kerak, lekin kengaytmalari farqlanishi lozim. Sinf aniqlanishini o’zida saqlovchi fayl .h(h header fayl eknligini anglatadi) kengaytmada, implementatsiya saqlanuvchi fayl esa .cpp kengaytmali bo’ladi.

Listing 9.3 Circle.h

Listing 9.4 Circle.cpp

Listing 9.5 TestCircleWithHeader.cpp

2. Ko’p qo’shishning oldini olish

Qo’shish himoyasi header fayllarni bir necha bor qo’shishning oldini oladi.

Bitta header faylni dasturga bir necha bor qo’shish umumiy xatolik hisoblanadi. Tasavvur qiling, Head.h ga Circle.h qo’shilsin va TestHead.cpp ikkisiga ham, yani Head.h hamda Circle.h fayllarga qo’shilsin.


Yüklə 462,77 Kb.

Dostları ilə paylaş:
  1   2   3   4




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©genderi.org 2024
rəhbərliyinə müraciət

    Ana səhifə