何时使用动态库和静态库

何时使用动态库和静态库

在C ++中创建类库时,可以在动态(.dll.so)和静态(.lib.a)库之间进行选择。它们之间有什么区别,何时适合使用哪种?



慕妹3146593
浏览 725回答 3
3回答

拉风的咖菲猫

静态库会增加二进制代码的大小。它们总是被加载,并且您编译的代码的任何版本都是将运行的代码的版本。动态库分别存储和版本化。如果更新被认为与原始版本二进制兼容,则可能会加载一个与您的代码一起提供的原始动态库版本。另外,动态库不一定要加载 - 它们通常在第一次调用时加载 - 并且可以在使用相同库的组件之间共享(多个数据加载,一个代码加载)。大多数时候动态库被认为是更好的方法,但最初他们有一个主要的缺陷(谷歌DLL地狱),它已被最近的Windows操作系统(特别是Windows XP)淘汰。
打开App,查看更多内容
随时随地看视频慕课网APP