dll库动态加载vs静态加载

动态加载:
 1:灵活,可以在需要的时候用LoadLibrary进行加载,在不需要的时候用FreeLibrary进行卸载,这样可以不必占用内存。
 2:可以在没有dll时候发现,而不致程序报错。
 3:加载程序中有条件才运行的库。
 4:热更新,在不停止程序的前提下进行更新。
 5:复杂一些,需要显示获得函数地址。
 6:dll没有对应的lib文件,此时只能进行动态加载。
 
静态加载:
 1:简单方便
 2:没有dll时,系统报错
 3:加载运行很久的库
 4:dll必需有相应的lib文件

 加载方法:
  1、确保有a.dll和a.lib,两个文件都有的话可以用静态加载的方式。
  2、在.cpp文件中通过#pragma comment(lib, "a.lib") 加载lib,并包含相应的头文件,就可以使用dll中的函数了

你可能感兴趣的:(dll库动态加载vs静态加载)