码龄10年 暂无认证

34094
访问
1
等级

8
获赞
3
评论

最新评论

  • 20240228阿⑤

    积分乍获得

  • 20231124ziher

    666

  • 20230909八月老师

    什麼時候發佈易語言支持庫呢

二.静态链接库和动态链接库的概念和区别

Heart 2023-04-25 09:24:14 发布 1310

分类专栏: 开发话题 文章标签: C C++ 编译原理

一.静态链接库

什么是静态链接呢?

即在链接阶段,将源文件中用到的库函数与汇编生成的目标文件.o合并生成可执行文件。该可执行文件可能会比较大。

这种链接方式的好处是:方便程序移植,因为可执行程序与库函数再无关系,放在如何环境当中都可以执行。

缺点是:

1.文件太大,一个全静态方式生成的简单print文件都有几百K。而动态链接生成的一样的可执行文件却只要10K左右。

2.由于静态库会嵌入到exe文件中,所以每次打开一个程序,都会在内存中存在相同的静态库,导致浪费空间

静态库.png

二.动态链接库

我们知道静态链接的话,文件会很大,往往实现很小的一个功能就需要占用很大的空间,而且每次库文件升级的话,都要重新编译源文件,很不方便。

所以有了动态链接库,会在程序运行起来的时候去引用到我们的DLL,这个DLL文件在内存中只有一份

并且在程序运行过程中动态调用库文件,很方便,又不占空间,

缺点:可移植性太差,如果两台电脑运行环境不同,动态库存放的位置不一样,很可能导致程序运行失败。

DLL和静态库.png

Heart1
0 0 上传作业
X
    网友评论 0条评论 0人参与
    请登陆会员1

    表情

    评论列表

×