Bibliothèques statiques (.lib) vs dynamiques (.dll)
Je suis débutant en C et C++, très récent utilisateur de Visual C++ express. Je ne comprends pas bien l'intérêt des bibliothèques dynamiques.
Si j'ai bien compris, la seule différence est que les fonctions appelées ne sont chargées qu'à l'exécution, ce qui évidemment réduit la taille de l'exécutable. Donc le seul intérêt serait la taille de l'exécutable.
Ai-je bien compris ?
Question subsidiaire : Je suppose que même dans le cas des .dll une fonction n'est chargée qu'une seule fois (au premier appel) et reste en mémoire ensuite jusqu'à la fin du programme. Et je suppose que même dans le cas d'une bibliothèque statique, seules les fonctions nécessaires (je veux dire "appelées dans le code" même si l'on n'est pas certain qu'elles seront effectivement utilisées) sont incluses dans l'exécutable (je veux dire pas toute la librairie statique).
Ai-je raison de supposer cela ?
Merci de vos réponses !
Partager