給定下面的僞代碼,我想要捕獲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