2011年3月8日
该文被密码保护。 阅读全文
posted @ 2011-03-08 22:44 RocZhang 阅读(4) 评论(0) 推荐(0) 编辑
摘要: C++ 用异常使得可以将正常执行代码和出错处理区别开来。 比如一个栈,其为空时,调用其一个pop 函数,接下来怎么办? 栈本身并不知道该如何处理,需要通知给其调用者(caller),因为只有调用者清楚接下来该怎么做。 异常,就提供了一个很好机制。 但是异常需要操作系统,编译器,RTTI的特性支持。下面围绕一个问题 “为什么析构函数不能抛出异常?” 展开C++中异常的实现。Effective C++ 里面有一条”别让异常逃离析构函数“,大意说是Don't do that, otherwise the behavior is undefined. 这里讨论一下从异常的实现角度,讨论一下为什 阅读全文
posted @ 2011-03-08 18:39 RocZhang 阅读(19018) 评论(2) 推荐(3) 编辑