gpt4 book ai didi

异常文档的 C# 准则

转载 作者:太空宇宙 更新时间:2023-11-03 13:12:07 26 4
gpt4 key购买 nike

<分区>

我正在处理的 API 变得相当大,现在我正在处理一些多线程的东西,所以我想确保我知道在任何给定点可能发生的所有异常。我知道 C# 没有必须为每个方法声明的已检查异常,如 Java,但我想我会在每个方法的文档中这样做。

考虑以下非常简单的示例:

/// <exception cref="System.DivideByZeroException">oh no, divide by zero.</exception>
int someMethod(int a, int b)
{
return a / b; //this might throw DivideByZeroException
}

//clearly this method can never throw a DivideByZeroException
int someOtherMethod(int a)
{
return someMethod(a, 2);
}

我是否将 DivideByZeroException 标记添加到“someOtherMethod”?

当然这只是一个非常简单的例子,真正的代码更复杂,但有时我知道一个子方法抛出的异常永远不会发生。不是因为我捕获了它,而是因为我总是会向它传递有效的参数。

如果我想要异常文档,那么我有 3 个选项:

1) 表现得好像那个异常永远不会发生并且不将标记添加到文档中(因为它永远不会发生,而且我有单元测试来支持它)。

2) 为我知道永远不会发生的异常添加异常标记。

3) try catch 并忽略,以确保它永远不会发生,因此我可以有意识地将它从异常列表中删除。

我最喜欢选项 1,但是对此有任何指导方针吗?

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com