C++动态链接库和静态链接库 VS中生成的lib和dll说明 python调用dll

C++动态链接库和静态链接库

何为动态链接库和静态链接库?
它们都是共享代码的方式。
动态链接使用动态链接库,动态链接允许可执行文件(.dll或.exe)在运行时调用动态链接库中的某个函数。(程序运行阶段)
静态链接使用静态链接库,链接器从静态链接库获取所有被引用函数,并将这些函数加入到可执行文件中。(程序编译链接阶段)
静态链接库的使用:
需要的文件:头文件.h、静态库.lib
头文件.h包含函数的声明,使用静态链接库的程序必须要引用该文件才能编译通过
静态库.lib包含函数的实际执行代码、符号表等资源
静态链接库的使用:
如,使用Win32API: LoadLibrary()等方法

  1. 预备知识:
    动态链接库和静态链接库—十分详细阅读完就理解了
    https://www.cnblogs.com/skynet/p/3372855.html
    C++动态链接库和静态链接库 VS中生成的lib和dll说明 python调用dll_第1张图片

window和linux dll文件生成区别
https://www.cnblogs.com/king-lps/p/7757919.html

添加链接描述
2.VS中生成的lib和dll说明
vs中 项目属性→配置类型为.dll时生成的DLL文件时代码实现主体,.lib相当于头文件。
项目属性→配置类型为.lib时,生成的lib文件是传统意义上的静态库,包含全量代码实现。
以上详见
3.python调用dll
Python调用windows下DLL详解 - ctypes库的使用

你可能感兴趣的:(c++)