有关Function Try Block的法则
来源:互联网 发布:班主任网络研修计划 编辑:程序博客网 时间:2024/06/01 08:50
法则1:构造函数的function try block处理程序只能用于转化(translate)从基类或成员子对象的构造函数抛出异常(也可能做一些相应的记录工作,或其它某种附带性的工作,以响应构造失败)。此外没有什么作用。
例如:
class X : Y{private: T* t_; Z* z_;public: X() try : Y(/* */), t_(static_cast<Y*>(this)), z_(static_cast<Y*>(this), t_) { } catch(...) // Y::Y或T::T或Z::Z { // 或X::X体内抛出异常 // 不应该删除t_和z_ throw; }}
法则2:析构函数的function try block 鲜有或没有实际用处,因为析构函数绝不应该产生异常。它能做的只不过是做些记录,或者发出提示信息
法则3:其他所有function try block 都没有实际用处。对一个函数来说,其内部正常的try block不能捕捉到的东西,其正常function try block也不能捕捉到。
避免使用function try block,这不是因为它们有害,而是因为和普通的try block相比,它们提供的好处太少,甚至根本就没有。更多的人了解的是普通的try block,而不是function try block。
阅读全文
0 0
- 有关Function Try Block的法则
- C++ 类构造函数初始化列表的异常机制 function-try block
- [abap] 有关Date的Function
- 有关try-catch-finally 的执行顺利
- smarty的block function(块函数)
- CODESYS中Function和Function Block的区别
- 有关oracle data block的英文解读
- Try Catch block
- 与variant有关的几个FUNCTION
- try...catch function
- block有关知识
- 有关display:block、display:table在IE、火狐的兼容性问题
- 有关javascript中replace(regexp,function)函数的解析
- underscore学习笔记—与函数有关的函数/Function
- 有关jQuery(function(){})与(function(){})(jQuery)
- the first glance at the try block
- 通过try/catch block载入文件
- python catch exception and continue try block
- 剑指Offer----二叉搜索树的后序遍历序列
- 2017.7.24 机房测试(计算几何,花花的聚会,文本编辑器)
- Final
- Android开发之解决设置GridView的边框
- Java反射
- 有关Function Try Block的法则
- 构造函数与析构函数的应用
- MySQL 中文乱码问题
- linq to sql
- UVALive
- hdu 1080 Human Genne Function
- 由一道题引发的关于输入输出的总结
- springMVC初识 源码末尾
- 线性表 —— 1