相关疑难解决方法(0)

在Delphi中:如何在调试时跳过代码段?

在Delphi中进行调试时,我经常会意外地进入我不感兴趣的代码.

让我们首先说我知道你可以用F8跳过,并且你可以用f4跑到某一行.

例:

function TMyClass.DoStuff():Integer;
begin
  // do some stuff
  bla();
end;

procedure TMyClass.Foo()
begin
  if DoStuff()=0 then // press F7 when entering this line
    beep;
end;
Run Code Online (Sandbox Code Playgroud)

示例:我想通过按F7进入方法DoStuff(),但是我没有去那里,而是首先进入FastMM4.FastGetMem(),这是一个庞大的汇编代码,显然我对它不感兴趣.时刻.

有几种方法可以解决这个问题,我不喜欢它们中的任何一种:

  • 在" bla " 上添加一个断点(如果你只想在特殊情况下进入DoStuff,几乎没用,比如迭代23498938);

  • 而不是按F7,手动将光标移动到" bla ",然后按F4(Works为这个简单的例子.实际上,它没有);

  • 在FastMM的情况下:暂时禁用fastmm;

有没有办法提示IDE我从来没有兴趣进入某个代码块,或者我是否总是要设置额外的断点或使用F4来避免这种情况?

我希望有一些神奇的编译器指令,如{$ NODEBUG BEGIN/END}或类似的东西.

在大多数情况下,能够排除整个单元对我来说足够精细,但能够避免某些方法或甚至代码行会更好.

更新:也许codegear应该引入像跳过点(而不是断点)的东西:-)

delphi debugging

14
推荐指数
3
解决办法
5513
查看次数

标签 统计

debugging ×1

delphi ×1