动态链接库和静态链接库小小结

来源:互联网 发布:cacti监控windows 编辑:程序博客网 时间:2024/05/17 22:46

首先要说个问题:静态链接库的程序不一定就比动态链接库的程序大。经过一个小程序试验过的。

静态链接库和动态链接库都将生成lib文件,都具有模块封装,都是通过包含头文件                           #include "XXX.h"和#pragma comment(lib,"XXX.lib")来使用库文件。所以在公布库文件的时候要同时把.h头文件和相关的库文件都打包。静态链接库只生成lib文件,动态链接库还会生成dll文件。

静态链接库的lib文件包含了可以被使用的函数以及函数的实现,在编译可执行程序的最后过程,连接器从lib文件中抽取使用的信息放入可执行文件,所以,可执行文件不在需要库可单独运行。动态链接库文件的lib文件中只包含了导出内容的声明,这些内容的实现放在dll文件中,所以移植的时候还要把dll文件放在一起才能正常执行。动态链接库好处还可以只通过重新编译dll就能达到增加删减功能的特点,不需要重新编译可执行文件。

原创粉丝点击