1. 静态库:函数和数据被编译进一个二进制文件(通常扩展名为.LIB)。
-
在编译链接可执行文件时,链接器(Linker)从库中复制这些函数和数据并把它们和应用程序的其它模块组合起来创建最终的可执行文件(.EXE文件)。
2. 在使用动态库的时候,一般提供两个文件:一个引入库(.lib)和一个DLL。
-
引入库(.lib)包含被DLL导出的函数和变量的符号名
-
DLL包含实际的函数和数据。
-
在编译链接可执行文件(.EXE文件)时,只需要链接引入库,DLL中的函数代码和数据并不复制到可执行文件中
-
在运行可执行文件(.EXE文件)的时候,再去加载DLL,访问DLL中导出的函数。
更多内容请看C/C++动态链接库(DLL)详解
来源:孙鑫_VC++_学习笔记