C++ 异常处理

     严格的说,每条语句都有可能产生运行错误(异常),即便是一条简单的赋值语句,如 int a = 5;当堆栈分配完毕,这样的语句就会造成程序崩溃,(这种情况是非常少的,呵呵)严格讲,需要对每一条语句进行异常检测,但是这也是不切实际的,上面所说的情况只可能在一个极端的情况下才会产生。

     目前的程序只是尽可能的对错误进行捕获处理,或在底层通过硬件借口的状态寄存器等判断是否发生错误,或通过调用函数的返回值进行错误的处理。常用的一种方式是try,catch模块来处理,

    try:用于判断执行的语言是否有异常发生。

    catch用于对捕获的异常进行处理。

    throw:可以人为的抛出异常,主要用于人为定义异常。

int _tmain(int argc, _TCHAR* argv[])
{
using namespace std;
try
{
cout << "abc" << endl;
throw 10;
}
catch(int& a) //这里的a,就是在try里面抛出来的10
{
cout << "处理异常模块,异常号:"<< a <<endl;
}
catch(double d)
{
cout << "handle exception module,NO = "<<d<<endl;
}

try
{
cout << "float" << endl;
throw 10.4;
}
catch(int& a) //这里的a,就是在try里面抛出来的10
{
cout << "处理异常模块,异常号:"<< a <<endl;
}
catch(double d)
{
cout << "handle exception module,NO = "<<d<<endl;
}
getchar();
return 0;
}

结果:

C++ 异常处理

原文链接: https://www.cnblogs.com/endeavour/archive/2011/11/21/2258178.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

    C++ 异常处理

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/36908

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月8日 下午1:37
下一篇 2023年2月8日 下午1:37

相关推荐