C++无法抛出异常怎么办

本篇内容主要讲解“C++无法抛出异常怎么办”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C++无法抛出异常怎么办”吧!

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名注册、网页空间、营销软件、网站建设、集宁网站维护、网站推广。

E.26:如果无法抛出异常,尽快进行失败处理

Reason(原因)

If you can't do a good job at recovering, at least you can get out before too much consequential damage is done.

如果你无法很好的从错误中恢复,至少你可以在更多危害发生之前退出。

Note(注意)

如果你不能进行系统化的错误处理,可以将”失败“视为任何无法局部处理的错误的反应。也就是说,如果你无法在检出问题的函数上下文中从错误中恢复,可以调用about函数,quick_exit()函数或者类似的可以触发某种系统重启的函数。

在包含很多任务或者大量计算机的系统中,反正你已经需要预估和处理(包括硬件错误的)致命失败。在这样的情况下,”失败“仅仅是将错误处理转交给系统的下一层。

Example(示例)

void f(int n)
{
   // ...
   p = static_cast<X*>(malloc(n * sizeof(X)));
   if (!p) abort();     // abort if memory is exhausted
   // ...
}

Most programs cannot handle memory exhaustion gracefully anyway. This is roughly equivalent to

大多数程序都无法满意的处理内存枯竭。这差不多和下面的代码等价:

void f(int n)
{
   // ...
   p = new X[n];    // throw if memory is exhausted (by default, terminate)
   // ...
}

Typically, it is a good idea to log the reason for the "crash" before exiting.

通常,在因为”失败“退出之前记录原因是好想法。

到此,相信大家对“C++无法抛出异常怎么办”有了更深的了解,不妨来实际操作一番吧!这里是创新互联网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

网站栏目:C++无法抛出异常怎么办
转载来于:https://www.cdcxhl.com/article20/gjosjo.html

成都网站建设公司_创新互联,为您提供小程序开发网页设计公司移动网站建设搜索引擎优化网站设计网站改版

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

h5响应式网站建设