Допустим, у вас есть следующая иерархия. У вас есть базовый класс Animal с кучей подклассов, таких как Cat, Mouse, Dog и т. Д.
Теперь у нас есть следующий сценарий:
void ftn()
{
throw Dog();
}
int main()
{
try
{
ftn();
}
catch(Dog &d)
{
//some dog specific code
}
catch(Cat &c)
{
//some cat specific code
}
catch(Animal &a)
{
//some generic animal code that I want all exceptions to also run
}
}
Итак, я хочу, чтобы, даже если собака была брошена, я хотел, чтобы выполнялся случай с собакой, а также - с животным. Как ты это делаешь?