调试模式下的Visual Studio在抛出异常后自动重启(C ++)

时间:2015-06-15 21:15:52

标签: c++ debugging visual-studio-2013 remote-debugging

我正在开发一个我尚未创建的大型C ++项目,但以下简短代码完全代表了我面临的一个问题:

#include <string>
#include <iostream>
int main(int argc, char **argv){
    using namespace std;
    try{
        string str;
        str = "r";
        double d = stod(str);
        cout << "'stod' worked! d = " << d << endl;
    }
    catch (invalid_argument){
        cout << "I'm in 'catch'\n";
    }
    cout << "I'm after 'try-catch'\n";
    cin.get();
    cin.get();
    return 0;
}

如果我在没有调试器的情况下启动代码,一切正常,并且按预期进入catch-scope,然后main()继续。

如果我使用调试器,32位配置下的Visual Studio会立即重启或在64位配置下重新启动,我会收到一条消息:&#34;调试器的工作进程(msvsmon.exe)意外退出。调试将被中止。&#34;

我在Windows 8.1 Professional上使用VS2013 Ultimate。

由于这篇文章: msvsmon.exe crashed when debugging 我已经安装了Update 4.我没有断点。在DEBUG-&gt; EXCEPTIONS中,重置已完成。

我也不明白,msvsmon.exe是什么。谷歌搜索将它与远程调试器相结合,这让我感到困惑,因为我使用的是本地调试器,至少我每次都按下本地Windows调试器&#39;按钮。

有人可以帮助我吗?

0 个答案:

没有答案