异常处理的顺序是否重要?

时间:2013-08-05 13:16:20

标签: c++ exception types

例如,我想捕获异常类异常层次结构的多个类的异常,我是否需要担心它们的顺序是什么?

我听说订单不重要因为异常处理是内置于C ++中的,但我并不是百分之百确定。

我是对的吗?

2 个答案:

答案 0 :(得分:5)

catch条款的顺序很重要。

catch子句按它们出现的顺序匹配,使用继承层次结构中的异常的程序必须对其catch子句进行排序,以便派生类型的处理程序出现在{{1}之前}为其基本类型。

答案 1 :(得分:1)

是。首先应该抓住派生的例外和最少的基础。