哪种编程更好?
我不是在谈论完全排他性。它更适用于以下方面:list<T>.Find
,从中获取default(T)
或您的值,而不是ValueNotFound
异常(示例)。
或者list<T>.IndexOf
,您将获得-1或正确的索引。
最佳答案
好吧,答案取决于它。
在列表中未找到某项的情况下,抛出异常是一种可怕的做法,因为该项目可能不在列表中是完全可行的。
现在,如果这是某种形式的专用列表,并且应该在列表中找到,绝对是,则应该抛出异常,因为您遇到了不可行/不合理的情况。
一般来说,对于诸如业务规则之类的事物,专用错误代码会更好,因为您知道这些事情发生的可能性,并希望对这些可能性使用react。异常是您不希望看到的情况,如果发生,则无法继续执行代码。
关于c# - 异常与特殊返回值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/674317/