文章目录
- VS2019 Debug 模式
- VS2019 Release 模式
- exe连接动态库和静态库的流程
VS2019 Debug 模式
在Visual Studio的Debug模式下运行程序时,会生成以下文件:
-
可执行文件(
.exe
):生成的可执行文件(.exe
)会放置在Debug文件夹中。这是你的程序的主要执行文件。 -
调试符号文件(
.pdb
):pdb对应 program database。该文件记录了代码中断点等调试信息,因为它将代码中的所有对象符号映射到编译后的可执行文件中;映射代码状态到可执行文件中。调试器根据这些信息找出断点在哪个源文件的哪一行。 -
ilk文件:该文件重新构建项目时,会被连接器使用,它使连接器能够将根据修改的源代码生成的目标文件增量的连接到现有的.exe文件中,从而避免每次修改程序时,都重新链接所有文件
-
依赖库:lib文件:静态库,dll文件:动态库
VS2019 Release 模式
- manifest文件:Manifest文件是一个XML文件,用于描述应用程序的依赖关系和其他运行时配置。Manifest文件通常用于指定程序所需的操作系统版本、依赖库、程序启动方式和权限要求等信息。
exe连接动态库和静态库的流程
- 静态库(.a / .lib):
静态链接库在程序编译时被连接到目标代码中参与编译;链接时将库完整地拷贝至可执行文件中,被多次使用就有多份冗余拷贝;生成可执行程序之后,静态链接库不需要(因已将函数拷贝到可执行文件中)。 - 动态库(.so /.dll)
程序运行时由系统动态加载动态库到内存,生成可执行程序之后动态库依然需要,供程序调用,系统只加载一次,多个程序共用,节省内存