c# – 关于try-catch块的想法

前端之家收集整理的这篇文章主要介绍了c# – 关于try-catch块的想法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
您对代码的看法如下:
  1. public void doSomething()
  2. {
  3. try
  4. {
  5. // actual code goes here
  6. }
  7. catch (Exception ex)
  8. {
  9. throw;
  10. }
  11. }

我看到的问题是没有处理实际错误,只是将异常抛在另一个地方.我觉得调试起来比较困难,因为我没有得到实际问题所在的行号.

所以我的问题是为什么这会好?

—-编辑—-

从答案来看,大多数人都认为这样做毫无意义,没有捕获自定义或特定异常.这是我想要评论内容,当没有抓住特定的例外时.我可以看到实际使用捕获的异常执行操作的重点,而不是此代码的方式.

解决方法

根据您所看到的质量,不会将异常放在不同的地方.没有目标的“throw”重新抛出异常,这与抛出异常非常不同.主要是重新抛出不会重置堆栈跟踪.

在这个特定的样本中,捕获是没有意义的,因为它没有做任何事情.这个例外很快就被重新抛出了,而且几乎就像try / catch不存在一样.

猜你在找的C#相关文章