给定下面的伪代码,我想要捕获B类中的子对象a引发的异常,并将此对象保留在B中。下面所述的catch子句不起作用,因为对象a是私有的B.我怎样才能捕捉到这个异常?如何从私有成员子类对象中捕获异常?
编辑我已经改变了伪代码嵌入类B.内A类
class B
{
class A
{
public:
class Exception{};
A() throw(Exception) { ... } // A ctor throws an Exception class object
} a;
public:
B() { ... } // B ctor
};
int main()
{
try
{
B b;
}
catch(B::A::Exception&)
{
...
}
}
如果异常是指在其他类别被抓住,那么它不应该是私人 – 2012-04-22 21:38:35
感谢彻底改变这个问题的意思...:P – cHao 2012-04-22 21:47:11