vc++ try catch捕捉异常


try
    {
        //这里写入一些代码
        int a = 11, b = 0;
        int x;
        if (b == 1)
            throw 1; // 抛出异常。终止以下的代码执行 。
        if (a == 1)
            throw 2; // 再抛出个异常。终止以下的代码执行 。

        x = a / b; // b=0. 会产生运算异常。
    }
    catch (int i)
    {
        if (i == 1) // 由 throw 抛出的值 =1
            AfxMessageBox("b=1 is error!" );
        if (i == 2) // 由 throw 抛出的值 =2
            AfxMessageBox( "a=1 is error!");
    }
    catch (...) 
    {
        AfxMessageBox("catched b=0");
    } 

就是仍然使用C++标准的try{}catch(..){},项目/属性/C++/代码生成/启用C++异常   是/EHa。

或 在编译命令行中加入 /EHa 的参数。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM