笔试题中 3种错误处理的方法
来源:互联网 发布:淘宝微淘有什么用 编辑:程序博客网 时间:2024/05/13 13:54
# 笔试题中 3种错误处理的方法
一、 函数返回值:
比如很多Windows API的返回值为0表示API调用成功,返回值不为零,表示该函数调用中出错了,不同的返回值对应不同的出错类型。
- 优点:和系统API一致
- 缺点:不能方便的使用返回值(因为返回值去表示是否出错了,如main()函数,最后return 0 一样)
二、 设置全局变量
此时我们可以在返回值中传递结果了,当出错时修改这个全局变量的值 eg. 定义非法输入的全局变量:
bool g_InvalidInput = false;//出错时,将该全局变量设为True
- 优点:能方便的使用返回值(计算结果)
- 缺点:用户经常会忘记检查这个全局变量
三、 使用异常
函数运行出错,就抛出一个异常,根据不同的原因抛出不同的异常
另外,能显式划分程序正常运行模块(try模块)和处理异常的代码块(catch 模块),逻辑比较清晰
- 优点:可以为不同的错误原因定义不同异常类型,逻辑清晰明了
- 缺点:有些语言如C就不支持异常,并且,跑车异常时,会打乱程序的正常执行顺序,对性能有负面影响
四、总结:究竟用哪种方式处理错误呢?
面试中,要看面试官的需求
听到题目之后,要尽快分析出可能存在哪些非法输入,并和面试官讨论该如何处理这些非法输入。
- 讨论:可以跟他说这三种方法的优缺点啊,根据优缺点和题目本身,然后和面试官一起讨论用哪个比较合适这道题目
0 0
- 笔试题中 3种错误处理的方法
- 3种错误处理的方法
- VC中处理C1010错误的两种方法
- delphi中处理数据类型错误的方法
- 3种错误处理方法
- 三种错误处理的方法
- 阿里巴巴一道笔试题【程序中错误量的估算】
- C++ 在库中处理错误的一种方法
- 对网络流中403错误的处理方法
- Android中AVD的使用以及错误处理方法
- Android中AVD的使用以及错误处理方法
- 代码调试中偶然错误的处理方法
- Java中导出jar包的方法以及错误处理
- Java中3种处理系统错误的机制
- SEHException的错误处理方法
- JPS错误的处理方法
- 传统的错误处理方法
- C++中overflow错误处理方法
- 如何用sql profile 找出执行慢的sql
- 浅谈三层
- linux中fork()函数详解
- 远处的是风景,近处的才是人生
- MyEclipse常见的异常总结
- 笔试题中 3种错误处理的方法
- QUESTION 47 How many copies of the alert log are stored in the directory specified by the initializa
- java学习细节知识点总结
- [leetcode] 11. Container With Most Water 解题报告
- HDU校赛
- [Leetcode]3. Longest Substring Without Repeating Characters
- vs 2013 使用scanf获取输入字符和字符串
- CentOS7中自编的一个支持suid的system函数(c语言)
- 学过JDBC才知道前一篇文章的经历完全可以避免。。。