在STL中如何判断错误

gary 2000-06-22 05:08:00
STL提供了一些标准的类模版,但里面的函数大多是void的型的,我如何判断操作是否成功
例如:
queue<int> t;
t.pust(4); //我如何知道压栈是否成功?
//如果由于内存不够,不能操作成功,我不能方便的判断
其实,我想当初编这些模版的人没有给返回值,一定有它的原因,我想知道为什么,有什么简便的办法判断出错没有
...全文
152 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
myan 2001-03-04
  • 打赏
  • 举报
回复
STL使用allocator分配内存(不是new),效率高于new. 分配失败时抛出
异常。内存分配不成功,则程序该立即结束,所以只要你是在使用C++,
可以永远不用考虑内存分配的问题。

另:用返回值来判断函数运行成功与否是过时的方法,不过说真的,我觉得
不错。
zhouzicn 2001-03-03
  • 打赏
  • 举报
回复
我也想学STL,给我一点帮助,好吗!
zhouzicn@263.net
gary 2000-06-22
  • 打赏
  • 举报
回复
windoze兄弟,你的方法我试过了,不起作用,到最后系统资源用完后,系统报异常错,程序异常终止
windoze 2000-06-22
  • 打赏
  • 举报
回复
最简单的方法,是用结构化异常处理
例如

queue<int> t;
try{
t.push(4);
}
catch(int e)
{
// Some error-handling codes
}

69,364

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧