Dasturlash tillari va axborot-kommunikatsiya texnologiyalari 1-semestr
266
Paket tasnifi va u bilan bog‘liq paket tanasi bir xil nomga ega.
Paket sarlavhasidagi qayd
etilgan body so‘zi u paket tanasi ekanligini bildiradi. Paketning tasnifi va tanasi faqatgina paket
tasnifi birinchi bo‘lib, kompilyatsiya qilingan sharaoitdagina aloxida kompilatsiya qilinishi mumkin.
5.2.2. Ma’lumotlarni ochish
Paket tasnifini tasvirlash uchun va ularni eksport qilish uchun qo‘llaniladigan tiplar
uchun
hech qanday chegirmalar yo‘q. Foydalanuvchi, yoki mijozlarga butunlay ko‘rinarli bo‘lgan
mohiyatni yaratish mumkin yoki uning interfeysi haqidagi ma’lumotlarni ta’minlashi mumkin.
Buning uchun paket tasnifida ikkita mavzu qo‘llaniladi. Ulardan birinchisida mijozlarga ko‘rinarli
mohiyat
aks etadi, ikkinchisida o‘z mazmunini yashiradi. Masalan agar tip eksport qilinishi kerak
bo‘lsa, lekin uning taqdimoti yashirilgan bo‘lsa, tasnifning ko‘rinadigan
qismida faqatgina tipning
ismi va uning taqdimoti yashirincha ekanligi haqidagi fakt qisqartirilgan e’lon shaklida
joylashtiriladi. Tipning taqdimoti yopiq (private) deb ataladigan tasnif
qismida joylashtiriladi va
zaxiralangan private so‘zidan boshlanadi. Yopiq mavzu doimo tasnifning oxirida joylashtiriladi.
Aytaylik NODE_TYPE nomli tip paket bilan eksport qilinayapti,
lekin uning taqdimoti
yashiringan. NODE_TYPE tipi paket tavsifining ko‘rinadigan qismida uning taqdimot detallarisiz
quyida ko‘rsatilganidek e’lon qilinadi:
type NODE_TYPE is private;
E’lonlarning yopiq mavzusida NODE_TYPE tipi takrorlanadi lekin bu safar tipning to‘liq
aniqlanishi bilan:
package
LINKED_LIST_TYPE is type
NODE_TYPE is private;
private
type
NODE_TYPE;
type
PTR is access
NODE_TYPE;
type
NODE_TYPE is
record