故意失败的代码

时间:2014-09-19 02:35:08

标签: c#

编写您知道可能会失败的代码并忽略异常,是不是风格和/或性能不好?例如(在C#中):

long l = 1;
try {
  l = (long)castObject;
} catch(InvalidCastException e) { }

在这种情况下,程序员并不特别关心是否抛出InvalidCastException

1 个答案:

答案 0 :(得分:6)

不要那样做。

  • 例外情况会导致性能大幅下降。
  • 惹恼开启了Break On Exceptions的开发者 (你应该做些什么来捕捉隐藏的错误)
  • 这使得意图不太明确。 (为什么它不是long?)