相关疑难解决方法(0)

"Dying is Awesome"更受青睐吗?

最近我参加了Jeffrey Richter关于.NET的培训课程.他提到了一种编码"死亡很棒"的策略.也就是说,即使在程序或事件循环的根目录下也不要写"catch(Exception ex)".如果抛出一些未处理的异常,只需让进程死掉.

我不确定这是对的.就个人而言,我更喜欢用" try {...} catch(Exception ex) {log and try to recover}"来包装在最高级别的执行中.实际上,如果从asXx抛出任何异常,ASP.NET不会死亡.如果它因异常而死亡,那么一个银弹请求可能会使整个服务无效.

你怎么看?

.net architecture crash exception-handling exception

18
推荐指数
6
解决办法
2889
查看次数

捕获主要(...)中的异常是否有意义?

我在项目中找到了一些看起来像这样的代码:

int main(int argc, char *argv[])
{
  // some stuff

 try {
  theApp.Run();
 } catch (std::exception& exc) {
  cerr << exc.what() << std::endl;
  exit(EXIT_FAILURE);
 }
 return (EXIT_SUCCESS);
}
Run Code Online (Sandbox Code Playgroud)

我不明白为什么会有例外.如果不是,则应用程序将退出并打印异常.

你认为有什么好理由在这里捕捉异常吗?


编辑:我同意打印异常错误是好的.但是,重新抛出异常不是更好吗?我觉得我们在这里吞咽它...

c++ exception-handling exception

11
推荐指数
4
解决办法
5631
查看次数

标签 统计

exception ×2

exception-handling ×2

.net ×1

architecture ×1

c++ ×1

crash ×1