3
想,我有不同的功能,它可以拋出異常:如何使用try/catch塊封裝調用?
我在代碼中不同的地方,可在下列方式使用這些功能:
some_func(/*applying of func_foo or func_bar or func_foobar*/(...))
其實,我使用的結果的功能立即在不同功能的許多地方。
什麼是最好的方式來包裝調用func_foo/func_bar_func_foobar函數與try/catch塊沒有全局重寫其他代碼段?
理想我想使用類似的東西(例如調用func_foo)
some_func(TRY_CATCH_BLOCK(func_foo(...)));
catch處理程序將傳播的異常與不同類型的
catch (const ExceptionFoo& e)
{
throw SomeException1("Some message from e");
}
catch (const ExceptionBar& e)
{
throw SomeException2("Some message from e");
}
他們處理的收穫?它是被調用者還是調用者? – NathanOliver
'catch'應該做什麼?類似於伐木和重新投擲的東西? – Quentin