Welcome

首页 / 软件开发 / Delphi / 第十二章-异常处理与程序调试(三)(1)

第十二章-异常处理与程序调试(三)(1)2007-05-0712.4.3 断点的使用

12.4.3.1 设置断点

设置断点首先在Code Editor中选定你想设置断点的代码行,而后进行如下的任一种操作:

● 单击选定代码行左边的空白

● 按F5

● 选择Code Editor加速菜单的Toggle BreakPoint项

● 选择Run|Add Breadpoint打开断点编辑对话框(Edit BreakPoint Dialog Box),而后选择New去确认一个新的断点设置或选择Modify去对一个存在的断点进行修改

● 从BreakPoint List加速菜单中选择Add BreakPoint项

断点必须位于可执行代码行上,凡设置在注释、空白行、变量说明上的都是无效的。另外,断点既可以在设计状态下设置也可以在运行调试状态下设置。

12.4.3.2 断点的操作

断点列表窗口(BreakPoint List Window)列出了所有断点所在的源文件名、行号、条件以及已通过的次数。如果一个断点非法或失去功能,则在列表窗口中变灰。

断点列表窗口可以通过选择View|BreakPoint菜单打开。

断点列表窗口是断点操作的基础。

1.显示和编辑断点处的代码

利用断点列表窗口可以快速找到断点在源代码中的位置。

首先选定断点而后从加速菜单中选择View Source或Edit Source。此时Code Editor更新,显示该断点位置处的代码。如果选择的是View Source,则断点列表窗口仍保持活动;如果选择的是Edit Source,则Code Editor获得输入焦点,可以在断点位置修改源代码。

2.断点功能的丧失和恢复

使断点失去功能可以使断点从当前程序运行中隐藏起来。假如你定义了一个断点当前并不需要,但可能在以后使用,则这一功能是很有用的。

断点列表窗口加速菜单的Disable BreakPoint和Disable All BreakPoints项可以使当前选中断点或所有断点失去功能。

加速菜单中的Enable BreakPoint和Enable All BreakPoint 可以使相应断点恢复功能。

3.断点的删除

断点删除可以从Code Editor或断点列表窗口中进行。

从Code Editor:

● 把光标停到包含断点的行并按F5(或选择加速菜单的Toggle BreakPoint)

● 单击包含断点行左边的终止符

从断点列表窗口:

● 选中欲删除的断点并选择加速菜单的Delete BreakPoint项

● 删除当前所有断点,则选择加速菜单的Delete All BreakPoints项

12.4.3.3 修改断点属性

断点列表窗口双击选定断点或从加速菜单中选择Edit BreakPoint项,可以打开断点编辑对话框,用于显示和修改断点的属性。

利用断点编辑对话框可以改变断点的位置,设置断点条件。

断点条件包括两种:布尔表示式和通过次数。

Condition编辑框用于设置布尔表达式条件。如果表达式值为真(或非零)则程序运行在断点处中止;否则调试器将忽略该断点。

Pass Count编辑框用于设置通过次数条件,即只有当程序运行在该断点处通过设定次数时程序运行才在该断点处中止。这往往用于对循环体内语句的调试。

有一点应引起注意的是:当Condition和Pass Count同时设置时,Pass Count是指满足条件的通过次数。

对如下一段程序:

var

i,Re,s: Integer ;

begin

s := 1;

Re := 0;

for i:=1 to 100 do

Re:=Re+s*i ;

end;

在 Re := Re + s*i; 一行设置一断点。

若条件设置为:

Condition : i = 3

Pass Count: 4

则当程序中止时检测i 的值为7。

12.4.3.4 断点和程序执行点颜色的设置

选择Option|Environment进入环境设置对话框而后选择Editor Colors页标签。此时即可对有关项按自己的希望设置背景和前景色。

12.4.4 监视数据的值

内置调试器提供了如下的工具用于监视程序中数据的值:

● 监视列表窗口

● 计算/修改对话框

● 调栈窗口