如何在VS 2008调试器中跳过常见类的调试步骤?
比如,我不想调试器进入任何std::类中。我该怎么做?
我找到了在VS 2005及更早版本中实现此功能的方法,但在VS 2008中未找到。
如何在VS 2008调试器中跳过常见类的调试步骤?
比如,我不想调试器进入任何std::类中。我该怎么做?
我找到了在VS 2005及更早版本中实现此功能的方法,但在VS 2008中未找到。
HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\9.0\NativeDE\StepOver
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\9.0\NativeDE\StepOver
Wow6432Node密钥是64位系统上运行的32位应用程序所需的密钥。 (附注:在注册表中搜索“_RTC_CheckEsp”可能会把你带到正确的位置,这是Visual Studio 9中的默认条目)
语法对你来说应该很熟悉,但作为示例,一个简单的条目可以是字符串值boost::.*=NoStepInto
,这将避免调试器进入Boost。查看http://www.cprogramming.com/debugging/visual-studio-msvc-debugging-NoStepInto.html获取其他示例。
希望这能帮助你 :)
来自http://www.highprogrammer.com/alan/windev/visualstudio.html:
避免步入函数
通常有必要避免步入一些常见的代码,如构造函数或重载的运算符。autoexp.dat提供了这种功能。添加一个名为“[ExecutionControl]”的部分。添加键,其中键是函数名称,值是“NoStepInto”。您可以在命名空间或类的第一组冒号之前指定星号(*)作为通配符。
autoexp.dat仅在Visual Studio启动时读取。
要忽略名为myfunctionname的函数以及对CFoo类的所有调用:
[ExecutionControl]
myfunctionname=NoStepInto
CFoo::*=NoStepInto
为了忽略MFC CStrings的构造和赋值操作:(注意CString :: operator =中的额外=。)
[ExecutionControl]
CString::CString=NoStepInto
CString::operator==NoStepInto
[ExecutionControl]
ATL::*=NoStepInto
VisualStudio\10.0\NativeDE
) 我真的认为这个答案被低估了... :) - Hertzel Guinness