Mire valók a dll fájlok?
Letöltöttem egy könyvtárat a IDE programomhoz. Megtaláltam benne .h, .hpp fájlokat, amikben a különböző osztály definíciók vannak.
Nem találom azonban .cpp fájlokat, amikben a kifejtések lennének, ami azért kár, mert megakarom nézni, hogy egyes dolgokat, hogy oldottak meg.
Vannak viszont .dll és .lib fájlok. Lehetséges, hogy ezekben vannak "elrejtve" a kifejtések?
Nem tudok jó definíciót, de mondok egy példát. Mondjuk van egy programkód, ami mp3 fájlokat tud kezelni: ki-betömöríteni, vágni, lejátszani, stb. Ehhez vannak osztályok vagy függvények, amik meghívásával elérhetők a funkciók.
Ez egy általános feladat, ezernyi féle programban kellhet. De ahelyett, hogy a teljes forráskódot kellene be-include-olni, csak a header fájlokat kell, azokkal már hívhatók a függvények. Az implementációs rész pedig olyan "gyárilag" lefordított függvénykönyvtárban van, ami futásidőben elérhető, tehát nincs beépítve a progiba. Az ilyen dinamikusan csatolt könyvtár a DLL (dynamic link library).
Az egyik előnye, hogy ha egyszerre több program használja, akkor is csak egyszer kerül be a memóriába. Tehát nem része közvetlenül a programnak, csak mellé beemeli az operációs rendszer, ha épp igény van rá.
Egyébként pl. a Windows nagy része is dll-ek formájában van implementálva, tehát az op.rendszer szolgáltatások is nagyrészt ugyanígy érhetők el.
"Azért jó a dll, mert a forrást nem kell kiadniuk ahhoz, hogy használhasd az osztályokat"
Igen, de ez a statikus library-kra is igaz.
Forráskód nem lesz benne, ez egy lefordított kód.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!