new异常问题

[复制链接]
1288|6
 楼主| txcy 发表于 2013-11-29 14:18 | 显示全部楼层 |阅读模式
tc, TI, sql, IO, ce
try
{
    class_a *p = new class_a();//可能有异常
    。。。
    p->xx();//数据库接口,可能有异常
    。。。
}
catch(SQLException &sqlex)
{
}
catch(exception &ex)
{

}
catch(...)
{
}
return ;


我要区分上面两种异常,new的异常怎么捕获呢?
无冕之王 发表于 2013-11-29 14:27 | 显示全部楼层
catch (bad_alloc const&) 放在最上面.
yybj 发表于 2013-11-29 14:41 | 显示全部楼层
new一般抛出的是std::bad_alloc异常
火箭球迷 发表于 2013-11-29 14:49 | 显示全部楼层
new的异常其实是个悖论

new都能抛异常,整个运行环境早就不像样了,估计也catch不住了。
dfsa 发表于 2013-11-30 08:25 | 显示全部楼层
yybj 发表于 2013-11-29 14:41
new一般抛出的是std::bad_alloc异常

一般会抛出异常的
xsgy123 发表于 2013-11-30 08:33 | 显示全部楼层
火箭球迷 发表于 2013-11-29 14:49
new的异常其实是个悖论

new都能抛异常,整个运行环境早就不像样了,估计也catch不住了。 ...

分析的很深刻
shenmu2012 发表于 2013-12-5 22:16 | 显示全部楼层
不知所云的啊,我很汗颜。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

274

主题

2106

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部