<
>

12个Visual Studio调试效率技巧(小结)

2020-07-08 13:02:55 来源:易采站长站 作者:刘景俊

i>6 的断点。然后点击 继续 ,可以看到一旦断点停止, i 的值实际上变成了 7

6、跟踪断点

在遇到断点时,停止程序执行时最常见的操作。但是,你可以选择在输出窗口中不终止(或带终止)打印一些跟踪信息。下面的动图说明了这种可能性。我们在输出窗口中跟踪i从0到9的值。注意:跟踪断点在编辑器的断点显示位置显示为菱形形状。

注意,条件和跟踪操作都可以在断点上指定。

 

7、跟踪超出作用域的对象

在监视窗口中,通过当前执行范文内引用的名称来跟踪对象。但是,当这样的跟踪引用超出作用域时,即使在引用对象仍处于活动状态时,它在监视窗口的上下文也不安的毫无意义并且被禁用。

在许多情况下,我们想继续跟踪作用域外对象的状态。为此,请在监视窗口中右键单击此类引用,单击菜单 [Make Object ID] 创建对象ID(M) ,并要在监视器中添加$1(或者$2,$3,...,取决于你已经创建了多个对象ID)。

下面的动图演示了如何跟踪作用域外对象的属性获取器的状态,该属性获取器以字符串的形式返回实际的日期时间。它很好地显示了当引用 objFct() 上下文中超出作用域时,要观看的 obj 项将被禁用,而 $1 仍然会获得更新。

 

8、查看函数返回的值

函数返回的值有时在源代码中被忽略,或者有时这个值在调试时无法被显示的访问。

这样的返回值可以显示在 调试->窗口->自动窗口 中。伪变量 $ReturnValue 也可以在即时窗口和监视窗口中使用,以方便查看最后一个函数调用的返回值。

注意,菜单 调试->窗口->自动窗口 仅在 Visual Studio 调试器附加到进程并且程序被调试器暂停时可用。

9、重新附加到进程

Visual Studio 2017 开始,重新附加到进程 Shift+Alt+P 工具被提出,并且非常方便。将调试器附加到某个进程后, Visual Studio 会记住它,并建议将调试器重新附加到同一进程。斜体也一样,因为这里有一个关于进程标识的启发式方法:

如果已附加的进程仍然运行着,重新附加到进程,重新附加到它。 否则,Visual Studio将尝试查找和前一个进程名具有相同名称的单进程,并将调试器重新附加到该进程。 如果找到几个使用此名称的进程,则打开“附加到进程”对话框,只显示名称相同的进程 如果找不到具有此名称的进程,则显示“附加到进程”对话框
暂时禁止评论

微信扫一扫

易采站长站微信账号