前言:
异常机制是作为语言的新特性加入c++的,java的异常处理就是源自于c++的异常处理。尽管异常
引入c++很久了,但是c++社区还是有很多人写程序的时候不使用异常,还有人根本不知道如何正确
使用异常。至今没有一种公认的常规技术,使得异常抛出的时候,软件能哦与更可预测和稳定的行为。
异常不是逻辑错误,这一点无比要搞清楚。程序在异常存在的情况下运行的很好是因为它们就是这么设
计的,而不是碰巧运行的很好。异常安全的代码并不是靠运气写出来的,一个设计时没有考虑异常机制的软件
在异常发生的时候能够正确运行的概率和一个不是为多线程执行而设计的软件在多线程情况下能够正确执行
的几率是一样,几乎是零。
c语言时代,错误代码(error codes)满足了c程序员的需要,这一错误代码通常是一些全局变量或者是返回了
错误状态码。这样要求函数的调用者必须手动检测返回值来判断函数是否执行成功,这当然不是很方便的和不灵话
的。于此同时,异常处理也增加了程序的开销。不过你可以在编译时通过选项来设置禁用异常。
一下的几个章节简要论述了如何编写异常安全的代码。留意这几个章节的一些准则,你就能够让自己的软件更正确,
更健壮,更高效,而且你还能绕开很多在使用异常时经常遇到的问题。

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

被折叠的 条评论
为什么被折叠?



