每当我想要一个断点,在那里没有任何东西可以打破(在循环内,&c),我倾向于自动下拉:
int i = 2;
Run Code Online (Sandbox Code Playgroud)
我很好奇别人用的是什么.
在.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)
如果它是x86机器上的C++,我只使用:
__asm int 3
Run Code Online (Sandbox Code Playgroud)
并等待异常命中.甚至不必在Windows上的调试器中启动,或者使用好的Debug DebugBreak().
i = i;
Run Code Online (Sandbox Code Playgroud)
或范围中定义的任何变量.
在C#/ VS中,您会收到编译器警告,因此它也是将代码标记为未完成等的好方法.
console.write("stop here")
Run Code Online (Sandbox Code Playgroud)
在.net中总是使用这一行,我不知道为什么,已经使用了很多年了。
| 归档时间: |
|
| 查看次数: |
993 次 |
| 最近记录: |