只会在catch中抛出语句有意义吗?

时间:2012-11-21 03:40:54

标签: c# exception-handling

如果我有像

这样的异常代码
 catch
 {
      throw;

 }

它有意义吗?如果假设我不在函数中编写这段代码,那么异常在功能上会被视为相似或者有什么不同吗?

5 个答案:

答案 0 :(得分:4)

代码本身什么都不做,但这并不意味着它毫无价值。把它想象成一个存根。

我让这样的代码投入生产,每次意味着我在某些时候遇到麻烦,并且在开发过程中我有额外的代码,我用于调试,后来被删除...类似于一个额外的日志消息,MessageBox或跟踪调用,甚至只是一个无操作类型的行(string s = "";),我可以放置一个断点。如果你回顾源代码管理,你将能够看到这些陈述。

我喜欢留下存根,提醒一下这部分可能比它看起来更难。

然而,看看任何随机的代码,很多时候这段代码都存在,因为不知道更好的人只是认为应该有一个try / catch块。

答案 1 :(得分:0)

没有。它本身并没有任何意义。

如果不添加某种日志记录或其他逻辑,这相当于根本不使用try / catch块。

答案 2 :(得分:0)

这是多余的。它将捕获任何异常,然后重新抛出它。你最好不要使用catch,结果是相同的,代码也不那么杂乱。

答案 3 :(得分:0)

在这种情况下,如果您没有其他错误处理,则抛出实际上是重新抛出并且完全没有意义。

答案 4 :(得分:0)

不,没有意义,因为它没有处理异常,而只是重新抛出