Visual Studio Debug实战教程之基础入门实战教程之基础入门
前言前言
在过去,我已经写过好几篇关于调试 / debug / 解 Bug 的文章,但都是从宏观的角度上去讲的,并没有针对哪种工具做具体深
入的剖析。
在软件开发周期中,测试和修正缺陷(defect,defect与bug的区别:Bug是缺陷的一种表现形式,而一个缺陷是可以引起多种
Bug的)的时间远多于写代码的时间。通常,debug是指发现缺陷并改正的过程。修正缺陷紧随debug之后,或者说二者是相
关的。如果代码中存在缺陷,我们首先要识别造成缺陷的根本原因(root cause),这个过程就称作调试(debugging)。找
到根本原因后,就可以修正缺陷。
工欲善其事,必先利其器,一个强大的调试工具可以帮助我们快速的发现问题、解决问题。而能不能很好的利用这些工具则是
菜鸟程序员和高手程序员在工作方法上的一大区别。
所以,接下来,我打算从我最熟悉也是用户体量最大的 Visual Studio 开始入手,动手写关于 Debug 的系列教程。
Visual Studio提供了很多用于调试的工具。有时调试需要花费大量时间去识别root cause。VS提供了许多辅助调试的便捷的工
具。调试器(Debugger)包含错误列表、添加断点、可视化的程序流程、控制执行流程、Data Tips、监视窗口(watch
windows)、多线程调试、线程窗口、并行调试概览以及IntelliTrace调试概览。我希望本文能够对调试功能的使用者有所裨
益。
虽说 MSDN 上已经啥都有了,但是赤裸裸的英文世界还是挡住了不少的开发者,这里我希望能用最平实易懂的语言让大家快
速上手 VS 的调试功能。
它适用于 C#,C/C ++,Visual Basic,JavaScript 等大部分 VS 支持的编程语言。
说明一下,此教程主要参考 MSDN,但同时也添加了我自身在使用过程中积累的一些经验。
好了,废话不多说,进入主题。
本次教程将介绍本次教程将介绍 Visual Studio 入门阶段的一些入门阶段的一些 Debug 功能。功能。
与大多数 IDE 一样,Visual Studio 有两个调试阶段:
一是发现并解决 Build 过程中的项目和编译错误。
二是发现并解决 Run 过程中的动态错误。
Build 阶段阶段
Build Solution
Build 一个 Solution 先从配置开始。
Solution 的配置有两种基本类型: Debug 和 Release。
它们的区别如下:
Debug Release
生成的可执行文件未经优化,大而慢,内
含开发人员添加的调试信息,不会被投入
市场使用。
生成的可执行文件经过了优
化,小而快,可以被投入市
场使用。
默认配置为 Debug。
除此之外,还可以指定目标平台,如 x86(32 位 Intel CPU)、x64(64 位 Intel CPU)和 ARM(ARM CPU,仅支持某些应
用类型)。
若要更改此值,请单击平台下拉列表,选择其他平台或「配置管理器…」