138.安全退出的异常,要用throw 尽量不用exit(0)
2024-10-01 09:32:15
#include<iostream> #include<cstdlib>
using namespace std;
////非安全退出,结束进程,
//C++ 必须释放对象,最后结束,安全退出 class pstr
{
int *p;
public:
pstr()
{
cout << "构造" << endl;
p = new int[ * ];
}
~pstr()
{
cout << "析构" << endl; delete[] p; }
};
void run3(int i)
{
if (i == )
{
//throw 1;
exit(); //非安全退出,结束进程
//安全退出,释放对象内存,再结束进程
}
else
{
cout << "run3" << endl;
} }
void run2(int i)
{
pstr p2;
run3();
} void run1(int i)
{
pstr p1;
run2(i);
} void main()
{
try
{
run1();
}
catch (int i)
{
cout << i << "error"; } std::cin.get();
exit();
}
最新文章
- php 用 http post方法传输数据
- 前端工程师技能之photoshop巧用系列第二篇——测量篇
- Eclipse
- 重装系统后,delphi7打开报错
- 微信公众账号第三方平台全网发布源码(java)- 实战测试通过
- Atitti.数字证书体系cer pfx attilax总结
- php--tp3.2引入sphinx搜索
- 破解金盘gdlisxp系统
- Java回调函数的理解
- 1602A液晶
- [刷题]算法竞赛入门经典 3-12/UVa11809
- python中将字典形式的数据循环插入Excel
- 排序算法的实现(C/C++实现)
- ReentrantLock学习
- python dict 和 json 互转
- Unix IPC之Posix消息队列(2)
- Python爬虫入门(5):URLError异常处理
- 个人项目----词频统计WEB(部分功能)
- Fiddler-- 安装HTTPs证书
- ctf中检测和分离隐藏的文件
热门文章
- MySQL 5.7 zip 文件安装过程
- git提交不用每次都输入用户名密码
- 微信小程序-最新获取用户基本信息方案
- [转]opencv学习资料
- hdu 1394 Minimum Inversion Number 【线段树求逆序数】
- ZBrush通过绘制层得到子物体
- reduce &; fold in Spark
- 【Jim】I am back (ง •_•)ง
- [CTSC1999][网络流24题]家园
- How to check Open vSwitch version and supports OpenFlow version