您当前的位置: 首页 >  c++

命运之手

暂无认证

  • 1浏览

    0关注

    747博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

【C++】【异常处理】为什么c++代码里,使用了try-catch后,还是会崩溃

命运之手 发布时间:2021-07-19 21:07:25 ,浏览量:1

C++的try-catch,和Java、Javascript的异常处理,性质是不一样的

C++的try-catch,只能捕获在代码中主动throw出去的错误

对于空指针,野指针,内存越界等不在预料之中的错误,是没办法捕获的

所以C++的异常机制,更多时候是为了方便处理可预见的异常,对于程序崩溃是没太大效果的

这就是为什么很多人不建议在C++中使用try-catch的原因,它有点用,但好像又没太大用,地位比较尴尬

但是C语言是底层语言,很多时候都是直接和内存打交道

出了致命问题,就算程序不崩溃,再继续运行,也会有很多未知的隐患

不像Java等高级语言,它们设计了一套严格的内存管理和对象使用机制,保证了内存的安全性,但是也极大地付出了性能代价

其实我们所谓的Java智能,Java简单,Java安全,都是以牺牲性能为代价的

用惯了高级语言,享受其便利性的同时,我们也要体谅下,基础语言的痛楚

设计一套专门的内存安全机制,每个对象创建、销毁、使用都要经过这套机制的管理,这样的成本,已经完全超越了创建、销毁、调用对象本身的成本了,如果C语言这样去弄,那它的高效性也就不复存在了

关注
打赏
1654938663
查看更多评论
立即登录/注册

微信扫码登录

0.0498s