0

と の 2 つのクラスがAありBます。それらは次のように宣言されます。

class A
{
    public: void function() throw (exception);
};

class B
{
    public: void function();
};

B::functionを呼び出しますA::function。内部では、時々スローされる例外を抑制し、その後実行を継続B::functionしたいと考えています。A::functionどうすればいいですか?

4

1 に答える 1

4

次を使用して、すべての例外を削除できますtry { .. } catch ( ... ) { }

void ClassB::doSomething()
{
    try {
        classAObject.doSomethingWhichMayThrow();
    } catch ( ... ) {
    }
}

これはモラルに影響する可能性があることに注意してください。この時点で例外を飲み込むことが許容される理由を (少なくともコードのコメントで) 説明する準備ができている必要があります。

于 2012-11-02T13:35:45.217 に答える