DuiMini中的异常处理
我们不使用 C++ 异常.
——Google 开源项目风格指南
出于以下原因,DuiMini将禁用C++异常:
- 效率和库体积控制
- 便于和其他禁用异常的项目兼容
- 本人不喜欢C++的异常处理
因此我设计了一个UIException
用于处理异常并在必要时终止程序,而所有的异常处理都放置在Manager层中(关于模块化设计),接口统一返回错误码进行判断。
因此:
- 调用最低级的Manager层总是安全的(除非特殊说明,一般处于该层的异常均为致命异常,会直接终止程序)
- 调用由Manager组成的更高一级的Manager层一般也是安全的,因此无需处处考虑返回异常(许多函数都保证执行成功)
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Matrix!
评论