-2
可能重複:
throwing exceptions out of a destructor當我在C++析構函數中拋出異常時會發生什麼?
在C++中,我們不應該扔在析構函數的異常。此代碼是否按預期工作?
struct a
{
~a() { }
};
struct b : public a
{
~b()
{
throw 1;
};
};
bool c()
{
a* d=new b;
try
{
delete d;
}
catch(int e)
{
return e;
}
return false;
}
嘗試更好地格式化代碼,很難閱讀 – Anycorn 2010-08-05 04:08:39
我看不到任何意圖。誰知道它是否應該工作。 – 2010-08-05 04:25:28