视觉工作室 2015 年。如何*不*介入某些功能?

Din*_*aiz 3 c++ visual-studio-debugging visual-studio-2015

我想配置 VS2015 调试器,以便当我进入某些代码 (F11) 时,它会逐步执行某些功能。

例如,假设有一个模板类 SmartPointer,它有一个重载成员 -> 。

如果我有以下声明:

SmartPointer<SomeClass> ptr;
/* initialize ptr */

ptr->method();
Run Code Online (Sandbox Code Playgroud)

调试器将进入SmartPointer::operator->,退出,然后进入方法()。我想直接进入method()。

这可能吗 ?

编辑:所谓的重复不是一个,因为它不适用于 vs2013 或 2015

Din*_*aiz 6

好的,我实际上找到了解决方案。您必须以管理员身份进行编辑:

C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Packages\Debugger\Visualizers\default.natstepfilter

或者

C:\Program Files\Microsoft Visual Studio 14.0\Common7\Packages\Debugger\Visualizers\default.natstepfilter

取决于您使用的是 64 位还是 32 位机器。添加一行

<Function><Name>SomeFunction</Name><Action>NoStepInto</Action></Function>
Run Code Online (Sandbox Code Playgroud)

HTH

  • 而不是在 %userprofile%\Documents\Visual Studio 2015\Visualizers 中创建自己的 natstepfilter (7认同)