Jump to Next/Previous Function Definition

I prefer to browse my code manually rather than using MSVC's Wizard Bar. These simple macros move the cursor up and down one function at a time in a cpp file. This is accomplished by searching for a newline character followed by an open brace ('{'). Simple as they may be, they help me get the cursor where I want it quickly and easily. I map these functions to Ctrl-Page Up and Ctrl-Page Down.

Note: They do not work with functions that have the open brace on the function definition line.

Sub GotoFunctionHeaderUp()

'DESCRIPTION: Moves cursor to the previous function definition.

ActiveDocument.Selection.FindText "^{", dsMatchBackward + dsMatchRegExp

ActiveDocument.Selection.LineUp

ActiveDocument.Selection.StartOfLine

End Sub

Sub GotoFunctionHeaderDown()

'DESCRIPTION: Moves cursor to the previous function definition.

ActiveDocument.Selection.LineDown dsMove, 2

ActiveDocument.Selection.FindText "^{", dsMatchRegExp

ActiveDocument.Selection.LineUp

ActiveDocument.Selection.StartOfLine

End Sub

Jos¨¦ Manuel Mu¨¦lledes suggests using DevStudio commands WBGotoNext and WBGotoPrevious from WizardBar category. 

Updated on: October 15, 1998.