

码龄10年
暂无认证
34094访问
1
等级
8获赞
3
评论
热门文章
-
一.某岛之人物对象及其加密函数解析
2146
-
一.《传奇M》装备栏遍历的突破口
1788
-
二.某龙端游中LUA的分析和调用
1538
-
一.《轩辕传奇》周围遍历之二叉树
1384
-
一.《UE4奥丁》人物最大属性
1329
最新评论
-
20240228阿⑤
积分乍获得
-
20231124ziher
666
-
20230909八月老师
什麼時候發佈易語言支持庫呢
二.静态链接库和动态链接库的概念和区别
Heart
2023-04-25 09:24:14 发布
1310
分类专栏: 开发话题 文章标签: C C++ 编译原理
一.静态链接库
什么是静态链接呢?
即在链接阶段,将源文件中用到的库函数与汇编生成的目标文件.o合并生成可执行文件。该可执行文件可能会比较大。
这种链接方式的好处是:方便程序移植,因为可执行程序与库函数再无关系,放在如何环境当中都可以执行。
缺点是:
1.文件太大,一个全静态方式生成的简单print文件都有几百K。而动态链接生成的一样的可执行文件却只要10K左右。
2.由于静态库会嵌入到exe文件中,所以每次打开一个程序,都会在内存中存在相同的静态库,导致浪费空间
二.动态链接库
我们知道静态链接的话,文件会很大,往往实现很小的一个功能就需要占用很大的空间,而且每次库文件升级的话,都要重新编译源文件,很不方便。
所以有了动态链接库,会在程序运行起来的时候去引用到我们的DLL,这个DLL文件在内存中只有一份
并且在程序运行过程中动态调用库文件,很方便,又不占空间,
缺点:可移植性太差,如果两台电脑运行环境不同,动态库存放的位置不一样,很可能导致程序运行失败。


评论列表