Ric*_*dle 18

(这不是你要求的,但差不多:)

您可以通过调出New Breakpoint对话框并输入以下内容,在Visual Studio 中的类的每个成员函数上放置一个断点:

CMyClass::*
Run Code Online (Sandbox Code Playgroud)

http://blogs.msdn.com/b/habibh/archive/2009/09/10/class-breakpoint-how-to-set-a-breakpoint-on-ac-class-in-the-visual-studio -debugger.aspx了解更多详情.


tfi*_*iga 5

这是1800 INFORMATION的想法的快速实现:

Sub TemporaryMacro()
    DTE.ActiveDocument.Selection.StartOfDocument()
    Dim returnValue As vsIncrementalSearchResult
    While True
        DTE.ActiveDocument.ActiveWindow.Object.ActivePane.IncrementalSearch.StartForward()
        returnValue = DTE.ActiveDocument.ActiveWindow.Object.ActivePane.IncrementalSearch.AppendCharAndSearch(AscW("{"))
        DTE.ActiveDocument.ActiveWindow.Object.ActivePane.IncrementalSearch.Exit()
        If Not (returnValue = vsIncrementalSearchResult.vsIncrementalSearchResultFound) Then
            Return
        End If
        DTE.ExecuteCommand("Debug.ToggleBreakpoint")
        DTE.ExecuteCommand("Edit.GotoBrace")
        DTE.ActiveDocument.Selection.CharRight()
    End While
End Sub
Run Code Online (Sandbox Code Playgroud)

  • 如果您遇到名称空间问题,只需注释掉文档开头的第一行.您需要手动将光标放在要切换的块的开头,但它会起作用. (2认同)

180*_*ION 2

我不知道要使用什么 DTE 函数,但您可以非常简单地记录一个几乎可以做到这一点的宏:

  1. 转到文件顶部
  2. ctrl-shift-R(开始录制)
  3. ctrl - I(增量搜索)
  4. {(搜索第一个 { 字符)。
  5. F9(设置断点)
  6. ctrl - ](转到匹配的 } 字符)
  7. ctrl-shift-R(停止录制)

现在只需一遍又一遍地运行(ctrl - 反复shift P),直到到达文件末尾。

如果您有命名空间,则将 4. 更改为:

  1. ((在函数定义的开头搜索“(”)
  2. esc(停止增量搜索)
  3. ctrl - I(再次增量搜索)
  4. {(函数体开始)

这种东西可以无限修改以适合您的代码库