web-dev-qa-db-fra.com

Quelles sont les différences entre les fichiers .dll, .lib, .h?

Pourquoi dans un projet dois-je inclure des fichiers * .lib, .h ou d'autres fichiers? Et à quoi servent ces choses?

61
MemoryLeak
  • .h: fichier d'en-tête, c'est un fichier source contenant des déclarations (par opposition à .cpp, .cxx, etc. contenant des implémentations),

  • .lib: la bibliothèque statique peut contenir du code ou simplement des liens vers une bibliothèque dynamique. Quoi qu'il en soit, c'est du code compilé que vous liez à votre programme. La bibliothèque statique est incluse dans votre .exe au moment du lien.

  • .dll: bibliothèque dynamique. Tout comme un fichier statique, mais vous devez le déployer avec votre fichier .exe car il est chargé au moment de l'exécution.

86
siukurnin
  • H Déclare l'interface d'une bibliothèque - y compris les fonctions, les structures et les constantes. Écrit en langage C.
  • LIB Déclare l'interface binaire à une bibliothèque dynamique (DLL) ou contient le code binaire d'une bibliothèque.
  • DLL Une bibliothèque dynamique - votre application les partage avec le système ou vous les utilisez pour garder votre base de code organisée.
  • DEF Une description textuelle des fonctions exportées par une DLL.
25
Frank Krueger