int i = 2; //当你需要断点的东西时,你用什么作为一次性线?

rek*_*ide 8 debugging

每当我想要一个断点,在那里没有任何东西可以打破(在循环内,&c),我倾向于自动下拉:

int i = 2;
Run Code Online (Sandbox Code Playgroud)

我很好奇别人用的是什么.

And*_*are 11

Visual Studio可让您打破支撑.

  • 如果你不能使用VS?许多调试器不允许这样做,或者在不同于Windows的平台上工作? (2认同)

Pet*_*McG 9

在.NET Framework中(使用C#):

System.Diagnostics.Debugger.Break();
Run Code Online (Sandbox Code Playgroud)

为避免每次都输入此内容,只需为您的首选语言创建一个新的代码段:

<?xml version="1.0" encoding="utf-8" ?>
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
  <CodeSnippet Format="1.0.0">
    <Header>
      <Title>sddb</Title>
      <Shortcut>sddb</Shortcut>
      <Description>
        Code snippet for System.Diagnostics.Debugger.Break()
      </Description>
      <Author>Peter McG</Author>
      <SnippetTypes>
        <SnippetType>Expansion</SnippetType>
      </SnippetTypes>
    </Header>
    <Snippet>
      <Code Language="csharp">
        <![CDATA[System.Diagnostics.Debugger.Break();$end$]]>
      </Code>
    </Snippet>
  </CodeSnippet>
</CodeSnippets>
Run Code Online (Sandbox Code Playgroud)


Lee*_*win 7

如果它是x86机器上的C++,我只使用:

__asm int 3
Run Code Online (Sandbox Code Playgroud)

并等待异常命中.甚至不必在Windows上的调试器中启动,或者使用好的Debug DebugBreak().


dan*_*die 7

你不需要一次性代码.
你甚至可以在"for"循环声明中设置一个断点;
将光标移动到"for"循环声明,然后按F9

替代文字

  • 你在假设他在这里工作的环境. (2认同)

dev*_*vio 5

i = i;
Run Code Online (Sandbox Code Playgroud)

或范围中定义的任何变量.

在C#/ VS中,您会收到编译器警告,因此它也是将代码标记为未完成等的好方法.


bre*_*dan 4

console.write("stop here")
Run Code Online (Sandbox Code Playgroud)

在.net中总是使用这一行,我不知道为什么,已经使用了很多年了。