第三章,c++的异常处理

本文探讨了C++中异常机制的重要性及其与逻辑错误的区别。文章分析了从C语言错误代码到C++异常处理的转变,并提供了编写异常安全代码的指导原则。

前言:

异常机制是作为语言的新特性加入c++的,java的异常处理就是源自于c++的异常处理。尽管异常

引入c++很久了,但是c++社区还是有很多人写程序的时候不使用异常,还有人根本不知道如何正确

使用异常。至今没有一种公认的常规技术,使得异常抛出的时候,软件能哦与更可预测和稳定的行为。

 

异常不是逻辑错误,这一点无比要搞清楚。程序在异常存在的情况下运行的很好是因为它们就是这么设

计的,而不是碰巧运行的很好。异常安全的代码并不是靠运气写出来的,一个设计时没有考虑异常机制的软件

在异常发生的时候能够正确运行的概率和一个不是为多线程执行而设计的软件在多线程情况下能够正确执行

的几率是一样,几乎是零。

 

c语言时代,错误代码(error codes)满足了c程序员的需要,这一错误代码通常是一些全局变量或者是返回了

错误状态码。这样要求函数的调用者必须手动检测返回值来判断函数是否执行成功,这当然不是很方便的和不灵话

的。于此同时,异常处理也增加了程序的开销。不过你可以在编译时通过选项来设置禁用异常。

 

一下的几个章节简要论述了如何编写异常安全的代码。留意这几个章节的一些准则,你就能够让自己的软件更正确,

更健壮,更高效,而且你还能绕开很多在使用异常时经常遇到的问题。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值