7-3. 调试代码(debug)

  • 学习人数 30K+
  • 适合所有人群学习
avatar
林耿亮

你好编程主讲老师

1. 什么是调试?

在计算机编程中,调试是指排除程序的错误和缺陷的过程。

调试程序的方式有很多种,包括交互式调试、控制流分析、单元测试、集成测试、日志文件分析、内存分析。

很多编程语言或软件开发工具都提供一个程序用于调试代码,这个程序被称之为调试器

本节中,将重点介绍Visual Studio 2019中的调试功能。

2. Debug与Release配置

debug与release

Visual Studio界面中,工具栏有一个下拉选项,分别为DebugRelease可供选择。

Debug翻译成中文为调试Release翻译成中文为发行

使用Debug和Release配置分别进行编译,将会编译出两份不同的可执行文件。

编译后,Visual Studio将会在项目目录的同级目录下,创建Debug或Release文件夹,分别将不同配置的编译结果放入其中。

项目同目录下的debug与release文件夹

比较两个配置下编译的可执行文件,可以发现Debug配置编译的可执行文件明显大于Release配置编译的可执行文件。

debug与release文件大小比较

2.1 Debug配置

默认情况下,Debug配置编译的可执行文件未经过任何优化,并且附带调试信息。链接的运行库为调试版本。

Debug配置的目标用户是程序员,他们关心软件是否存在错误或缺陷,但是对软件的大小和速度不是非常在意。而在调试配置下生成的可执行文件拥有更强的调试能力。

2.2 Release配置

默认情况下,Release配置编译的可执行文件经过优化,某些流程和变量可能被编译器优化,而与代码中略有不同,不附带调试信息。链接的运行库为发行版本。

Release配置的目标用户是最终使用者,他们不关心软件的开发,但是对软件的大小和速度非常在意。而在发行配置下生成的可执行文件拥有更小的体积和更快的速度。

在解决方案管理器中的工程名上点右键,单击属性。即可进入工程配置面板。

进入工程属性

在工程配置面板中,可以查看Debug与Release配置的详细配置。

debug优化配置

release优化配置

Debug配置并未开启任何优化,而Release配置开启了/O2优化。