C++ .h .lib .dll文件,静态链接库与动态链接库,静态调用与动态调用

为了大家共享代码而产生了库,同时也省去了库函数被重复编译的额外开销

Windows静态链接库lib,动态链接库dll

lib在程序Link时被整体纳入,用则打包带走,不用则无

dll在程序Runtime才被使用

dll的调用分为静态调用和动态调用

动态调用,一般用LoadLibrary装载dllGetProcAddress获取函数,FreeLibrary释放dll

静态调用,由编译系统完成dll的装载和卸载代码(需要有写dll时生成的引入库lib,此lib中包含dll中各函数偏移地址)

调用小结:

libh文件+lib文件

dll动态调用h文件+dll文件

dll静态调用h文件+dll文件+lib文件(dll导入库)