国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

C++構(gòu)造函數(shù)中拋出異常,不執(zhí)行析構(gòu)函數(shù)的例子

2023-04-09 06:03 作者:淡定的茶  | 我要投稿

演示C++在構(gòu)造函數(shù)中拋出異常時,不調(diào)用析構(gòu)函數(shù),導致資源不能釋放的一種解決方法。


namespace TEST
{
void exception()
{
class A
{
public:
A()
{
cout<<"I am in A."<<endl;
try
{
m_pBuf = new char[100];

throw std::runtime_error("test");
}
catch(...)
{
cleanup();
}
}

~A()
{
cout<<"I will out A."<<endl;
}

private:
char* m_pBuf;

void cleanup()
{
cout<<"i am in cleanup."<<endl;
}
};

A a;

}
}

int main()
{
try
{
TEST::exception();
}
catch(exception& error)
{
cout<<"info is "<< error.what()<<endl;
}
catch (...)
{
cout<<"issue a exception."<<endl;
}

getchar();


return 1;
}


C++構(gòu)造函數(shù)中拋出異常,不執(zhí)行析構(gòu)函數(shù)的例子的評論 (共 條)

分享到微博請遵守國家法律
个旧市| 个旧市| 湛江市| 安平县| 安溪县| 正镶白旗| 商水县| 邹城市| 时尚| 全椒县| 阿鲁科尔沁旗| 嵊泗县| 靖边县| 南昌县| 特克斯县| 兴安盟| 泰和县| 视频| 县级市| 商丘市| 富蕴县| 尉氏县| 景洪市| 金湖县| 营山县| 含山县| 长顺县| 沈阳市| 勃利县| 沙坪坝区| 河间市| 多伦县| 樟树市| 牟定县| 广安市| 玛曲县| 泗阳县| 交城县| 小金县| 雅江县| 固原市|