1311异常及其特点 ◆常见的异常,如: ■系统资源不足。如内存不足,不可以动态申 请内存空间;磁盘空间不足,不能打开新的 输出文件,等 ■用户操作错误导致运算关系不正确。如出现 分母为0,数学运算溢出,数组越界,参数 类型不能转换,等 2005-4-27 北京邮电大学电信工程学院计算机技术中心
2005-4-27 北京邮电大学电信工程学院计算机技术中心 -6- 13.1.1 异常及其特点 常见的异常,如: 系统资源不足。如内存不足,不可以动态申 请内存空间;磁盘空间不足,不能打开新的 输出文件,等。 用户操作错误导致运算关系不正确。如出现 分母为0,数学运算溢出,数组越界,参数 类型不能转换,等
1311异常及其特点 ◆异常有以下的一些特点 偶然性。程序运行中,异常并不总是会发生 的。 ■可预见性。异常的存在和出现是可以预见 的 严重性。一旦异常发生,程序可能终止,或 者运行的结果不可预知 2005-4-27 北京邮电大学电信工程学院计算机技术中心
2005-4-27 北京邮电大学电信工程学院计算机技术中心 -7- 13.1.1 异常及其特点 异常有以下的一些特点: 偶然性。程序运行中,异常并不总是会发生 的。 可预见性。异常的存在和出现是可以预见 的。 严重性。一旦异常发生,程序可能终止,或 者运行的结果不可预知
1312异常处理方法及举例 ◆对于程序中的异常,通常有三种处理的 方法: ■不作处理。很多程序实际上就是不处理异常 的。 ■发布相应的错误信息,然后,终止程序的运 行。在C语言的程序中,往往就是这样处理 的 ■适当的处理异常,一般应该使程序可以继续 运行 2005-4-27 北京邮电大学电信工程学院计算机技术中心
2005-4-27 北京邮电大学电信工程学院计算机技术中心 -8- 13.1.2 异常处理方法及举例 对于程序中的异常,通常有三种处理的 方法: 不作处理。很多程序实际上就是不处理异常 的。 发布相应的错误信息,然后,终止程序的运 行。在C语言的程序中,往往就是这样处理 的。 适当的处理异常,一般应该使程序可以继续 运行
1312异常处理方法及举例 ◆一般来说,异常处理( Exception Handling) 就是在程序运行时对异常进行检测和控制 ◆而在C++中,异常处理(EH)就是用C++提供的 try- throw- catch的模式进行异常处理的机 制 2005-4-27 北京邮电大学电信工程学院计算机技术中心
2005-4-27 北京邮电大学电信工程学院计算机技术中心 -9- 13.1.2 异常处理方法及举例 一般来说,异常处理(Exception Handling) 就是在程序运行时对异常进行检测和控制。 而在C++中,异常处理(EH)就是用C++提供的 try-throw-catch的模式进行异常处理的机 制
◆例13.1程序将连续地输入两个实数,通过调用函数,返回这 两个数相除的商。并且要注意除数不能为0。 /例13.1用一般的方法处理除法溢出 *include iostream. h> #include <stdlib. h> double divide double a, double b) if (b== 0) //检测分母是不是 为0 cout<<"除数不可以等于0!"<<end1; aborto //调用 abort函数终止运行 return a/b 2005-4-27 北京邮电大学电信工程学院计算机技术中心
2005-4-27 北京邮电大学电信工程学院计算机技术中心 -10- 例13.1 程序将连续地输入两个实数,通过调用函数,返回这 两个数相除的商。并且要注意除数不能为0。 //例13.1 用一般的方法处理除法溢出 #include <iostream.h> #include <stdlib.h> double divide(double a, double b) { if (b == 0) //检测分母是不是 为0 { cout << "除数不可以等于0 !"<<endl; abort(); //调用abort函数终止运行 } return a/b; }