2

このような方法がある場合:

public int Foo()
{
    try
    {
        // ...
    }
    catch(Exception)
    {
        throw;
    }
}

例外が別の場所でキャッチされたと仮定すると、これは例外処理なしでメソッドを持つよりも優れていますか? それとも、逆にこれが不利益になるのでしょうか?

4

2 に答える 2

2

実行時には、これは動作をまったく変更しません。

デバッガーでは、これにより、この 1 つのメソッドだけで例外がスローされたときにブレークするブレークポイントを配置する場所が提供されます。特定の例外がスローされたときに中断するように Visual Studio に指示できますが、その 1 つのメソッドだけでなく、どこでも例外がスローされると中断します。

于 2012-11-16T22:09:49.393 に答える
2

これは、例外処理なしでメソッドを使用するよりも優れていますか?

いいえ。これは、デフォルトの動作である例外を渡す以外には何もしません。

個人的には、try/を持つことは、何らかの形の例外処理を行っているか、例外で何かcatchをしようとしていることを示唆しているため、これは悪い習慣だと思います。

于 2012-11-16T22:05:22.250 に答える