3种错误处理的方法
来源:互联网 发布:免费工作证明制作软件 编辑:程序博客网 时间:2024/05/24 02:49
通常我们的有三种方式把错误信息传递给函数的调用者。
1.函数用返回值来告知调用者是否出错。这种方式最大的问题是使用不便,因为函数不能直接把计算结果通过返回值赋给其他变量,同时也不能把这个函数的计算结果直接作为参数传递给其他函数。
2.当发生错误时设置一个全局变量。此时我们可以在返回值中传递计算结果了。这种方法比第一种方法使用起来更加方便,因为调用者可以直接把返回值赋给其他变量或者作为参数传递给其他函数。
但是这个方法有个问题:调用者很容易就会忘记去检查全局变量,因此在调用出错的时候,忘记做相应的错误处理,从而留下安全隐患。
3.第三种方式就是异常。等函数运行出错的时候,我们就抛出一个异常,我们还可以根据不同的出错原因定义不同的异常类型。因此函数的调用者根据异常的类型就能知道出错的原因,从而做相应的处理。
另外,我们能够显示划分程序正常运行的代码块(try 模块)和异常处理的代码块(catch 模块),逻辑比较清晰。另外,当抛出异常的时候,程序的执行会打乱正常的顺序,对程序的性能有很大的影响。
上述三种错误处理方式各有其优缺点。那么,面试的时候我们应该采取哪种方式呢?这要看面试官的要求。在听到面试官的题目之后,我们要尽快分析出可能存在哪些非法的输入,并和面试官讨论如何处理这些非法输入。
阅读全文
0 0
- 3种错误处理的方法
- 3种错误处理方法
- 笔试题中 3种错误处理的方法
- 三种错误处理的方法
- SEHException的错误处理方法
- JPS错误的处理方法
- 传统的错误处理方法
- VC中处理C1010错误的两种方法
- asp.net自定义错误处理页面的几种方法
- asp.net错误处理的三种方法
- Spring MVC处理错误的三种方法
- 处理错误状况的方法的
- TreeView 回调时产生错误的处理方法
- 最好的应用程序错误处理方法
- 处理CoreAVC Professional Edition 错误的方法
- asp.net错误处理最好的方法
- vs2005编译错误的处理方法
- delphi中处理数据类型错误的方法
- react-navigation
- 进程的概念和特征
- HDU-4123 Bob’s Race(树型dp+RMQ)
- R函数和控制流
- Linux学习(十三):Linux连接文件Ln
- 3种错误处理的方法
- Python学习之输入输出
- Problem D. Championships 图论 连通分量/度数 Warsaw U Contest, XVI Open Cup Onsite
- 安卓——如何获取Assets的路径
- [BZOJ 1823] 满汉全席 2-SAT
- [BZOJ1015][JSOI2008]星球大战starwar-并查集
- 开发监控Web 服务的Shell脚本
- Kubernetes中Secret使用详解
- servlet的执行原理与生命周期