Visual Studio 2015 - Verhindern Sie, dass der Debugger in den STL-Code (insbesondere in die std :: -Funktion) gelangt, aber dennoch in einen beliebigen Benutzercode, den die stl an @ aufruf

Ich versuche, das Debuggen von std :: function-heavy-Code weniger zu einem Albtraum zu machen. Ich möchte, dass Sie in diesem Beispiel direkt in den Lambda-Körper eintreten können:

std::function<void(void)> lam_dostuff = []() {
    printf("stuff has been done\n");
};

lam_dostuff();

Ich habe einige Nachforschungen angestellt und festgestellt, dass dasC:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Packages\Debugger\Visualizers\default.natstepfilter -Datei enthält schrittweise Überschreibungen. Ich kann die Regel hinzufügen<Function><Name>std::.*</Name><Action>NoStepInto</Action></Function>, und das hindert mich daran, in irgendeinen stl-Code zu springen, aber es hindert mich auch daran, in Benutzercode zu springen, der als Ergebnis des stl-Aufrufs aufgerufen wird. Ich habe versucht, die Regel @ hinzuzufüge<Function><Name>std::_Invoker_functor::_Call.*</Name><Action>StepInto</Action></Function>, die Signatur für den letzten Schritt eines Aufrufs der Funktion std ::, ohne Erfolg.

Kann ich irgendetwas tun, um das gewünschte Ergebnis zu erzielen?

Antworten auf die Frage(0)

Ihre Antwort auf die Frage