Bir DLL, kitabxana faylı və başlıq faylı arasındakı fərq nədir?


cavab 1:

Bir başlıq faylı düz mətndir. Obyekt sənədlərinə tərtib etmək üçün bir tərtibçidən istifadə edərdiniz.

Kitabxana faylı obyekt sənədlərinin vahid kitabxana sənədinə bir dəstə şəklində birləşdirildiyi koddur. Bir bağlayıcı hər şeyi bağlamağa başlayan kimi son məhsulun bir hissəsi olurlar.

Bir DLL tam tərtib edilmiş və işə hazır olan bir layihədir. Sadəcə birbaşa icra olunmur, lakin ona daxil olmaq üçün digər layihələrdən asılıdır.

İcra olunan fayllar əvvəlcə başlıqları tərtib etməli, əvvəlcə kitabxanaları bağlamalı, lakin birbaşa DLL işlədə bilər ...


cavab 2:

Bir DLL dinamik şəkildə yüklənən bir kitabxanadır. Bu, MS Windows-da tətbiqetmənin iş vaxtında bir kitabxananı yükləmək üçün istifadə edə biləcəyi xüsusi bir fayl növüdür.

Kitabxana faylı, müxtəlif əməliyyat sistemlərindəki bir sıra müxtəlif tipli ikili sənədlər üçün ümumi bir termindir, o cümlədən. Linuxda bir ELF faylı, Windows-da .dll və MacOS-da .dylib. Bu faylların hamısı sistemdə işləyən tətbiqlərə təqdim olunan kitabxanalardır. Bir başlıq faylı, bir tərtibçinin yaradılan kodu hazırlaya bilməsi üçün tətbiqin müvafiq kitabxanadan istifadə edə bilməsi üçün bir kitabxananın məzmununu təsvir etmək üçün istifadə edilə bilən bir inkişaf sistemindəki bir mətn faylıdır. Başlıq faylları ən çox C / C ++ dilləri ilə əlaqələndirilir.


cavab 3:

Bir DLL, kitabxana faylı və başlıq faylı arasındakı fərq nədir?

DLL bir Windows sistemində Paylaşılan Kitabxana üçün dayanır və Dynamic Link Library adlanır. Paylaşılan kitabxana, icra oluna bilən bir kitabxanadır. Bunun əvəzinə, proqramda kitabxananın iş vaxtı yükləndiyi bir küləş var. Bunun üç üstünlüyü var:

  1. Müəyyən bir kitabxanaya istinad edən hər bir yerinə yetirilən sənəd daha kiçikdir, disk sahəsi, yükləmə ölçüsü və s., Kitabxana kodu bir neçə proqram tərəfindən əldə edildikdə yaddaş istifadəsini azaltmaqla iş vaxtıdakı proseslər arasında bölüşdürülə bilər. Paylaşılan kitabxanalar istifadəçi interfeysi dəyişməyincə istifadə etdikləri sənədlərdən asılı olmayaraq yenilənə bilər.

Kitabxana faylı ya DLL (ya da Unix / Linux sistemlərindəki ortaq bir obyekt) və ya statik bir kitabxana ola bilər. Statik kitabxanalar onlardan istifadə edən proqramlara inteqrasiya olunur. Yəni kitabxanadan istifadə etdikləri kod yaradıldıqda icra ediləcəyi sənədə kopyalanır.

Bir başlıq faylı C və ya C ++ kodu olan bir fayldır. Yaratdığınız başlıqlara hər hansı bir kodu qoya bilərsiniz, lakin onlar ümumiyyətlə icra deyil, deklarasiyalardan ibarətdir. Bu xətt C ++ -də inline funksiyalar və şablonlar üçün kəsilmişdir. Əks təqdirdə başlıq sənədlərindəki təriflərə deyil, bəyannamələrə əməl etməlisiniz. Bəyannamələri bir yerə qoymaq üçün bir yoldur, beləliklə müəyyən funksiyaları istifadə edən bütün kodlar istifadə olunan hər bir faylı kopyalamaq əvəzinə eyni bəyannamələrdən istifadə edə bilər.