Ta’rifi Dinamik boglanuvchi bibliotekalar dasturda boshqa tillarda
yaratilgan protsedura va funksiyalardan foydalanishga imkon beradi.
40
Dinamik bibliotekalar bilan oddiy modullar orasida juda ko‘p
o‘xshashliklar mavjud, lekin ikki jihatdan farq qiladi.
Birinchidan, dinamik bibliotekada e’lon qilingan o‘zgaruvchilar
va konstantalardan asosiy dasturda foydalanib bolmaydi.
Ikkinchidan, modullar statik usulda, ya’ni, kompilyatsiyaning
komponovka bosqichida boglanadi. Dinamik bibliotekalar dinamik,
ya’ni, dastur bajarilishi jarayonida boglanadi. Agarda ikki dastur
oddiy modulga murojaat qilsa, shu modul ishlatilayotgan qismining
ikki nusxasi xotirada yaratiladi. Dinamik bibliotekaning ikki dasturi
ya’ni murojaat qilayotgan qismi faqat bir nusxada yaratiladi.
Dinamik bibliotekaning o‘zgarishi dastumi qaytadan kompilyatsiya
qilishga olib kelmaydi.
Yaratilishi DLL yaratish uchun maxsus Library so‘zi ishlatiladi.
DLL e’lonlar bo‘limi Exports so‘zidan boshlanib, eksport
qilinayotgan qism qasturlar ro‘yxatini o‘z ichiga oladi:
Library MyLibrary;
Function MyFunc
begin end; Procedure MyProc;
begin end; Exports MyFunc, MyProc; begin end. Qism dasturdan awal nomidan tashqari DLLga uning tartib nomeri
joylashtiriladi: birinchi qism dastur nomeri 0, keyingisi —1 va hokazo.
Dasturchi bu indeksatsiyani o‘zgartirishi va 0 dan 32767 gacha nomer
qo‘yishi mumkin:
Expots MyFunc index 1, MyProc index 2;
Dasturchi eksport qilinayotgan qism dasturi uchun tashqi nom berishi
mumkin:
Exports MyFunc index I name 'NEW FUNC';
Chaqirayotgan dastur eksport qilinayotgan qism dasturini tashqi nomi
yoki indeksi bo‘yicha chaqirilishi mumkin.