The C# feature you are referring to is called "Just My Code". Unfortunately, Visual Studio does not implement it in the same way for C++. As documentation says:
C++ Just My Code is different than .NET Framework and JavaScript Just
My Code because the stepping behavior is independent of the call stack
behavior.
There is a workaround, however:
You can create your own .natstepfilter
and .natjmc
to customize the
stepping and call stack window behavior in the %USERPROFILE%\My Documents\Visual Studio 2015\Visualizers
.
Despite of the typo in the documentation ("2015") and the horribly convoluted way this was designed, the trick actually works!
For example, with the Visual Studio 2017 installation on my machine, I can go to C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\Packages\Debugger\Visualizers
and a add file called .natstepfilter
with the following content:
<?xml version="1.0" encoding="utf-8"?>
<StepFilter xmlns="http://schemas.microsoft.com/vstudio/debugger/natstepfilter/2010">
<Function>
<Name>std::.*</Name>
<Action>NoStepInto</Action>
</Function>
</StepFilter>
Now when I debug in Visual Studio and step into something, all C++ standard-library functions are skipped.
Note that the actual format of the XML file is not validated very strictly by Visual Studio. I've actually used the simpler form explained in the Visual Studio 2015 documentation.