首页 / 数码消费 / 正文

静态加载和动态加载的含义

时间:2024-12-17 01:02:05

动态/静态动态加载静态加载(Windows环境)

一、动态库和静态库的区别

静态库与动态库都是共享代码的方式,如果采用静态库,lib 中的指令都全部被直接包含在最终生成的 EXE 文件中了,最终的可执行文件exe会比较大。但是若使用 动态库,该 DLL 不必被包含在最终 EXE 文件中,EXE 文件执行时可以“动态”地引用和卸载这个与 EXE 独立的 DLL 文件。 静态库中不能再包含其他的 动态库 或者 静态库 ;而在动态库中还可以再包含其他的动态或静态库。 静态链接库运行之前就加载了,而且一直存在直到关闭程序,动态DLL是在运行时再加载,不用一直占内存,dll模块内部更改了,是要替换Dll即可,方便维护。

二、动态库的使用方法

动态链接库的使用需要库的开发者提供生成的.lib文件和.dll文件。或者只提供dll文件。使用时只能使用dll中导出的函数,未导出的函数只能在dll内部使用。Dll的调用有显示连接和隐式连接两种:隐式连接需要三个东西,分别是*.h头文件,lib库(动态的),DLL库;显示连接只需要.dll文件即可。

《静态加载和动态加载的含义》不代表本网站观点,如有侵权请联系我们删除

科技在线 广州云媒派信息技术有限公司 版权所有 粤ICP备2021127029号