C++实验报告(异常处理)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验三计算三角形面积中的异常处理

一、实验目的

1.了解C++异常处理机制

二、实验环境

Windows + VC++6.0。

三、实验内容及要求

1.设计一个程序根据输入的三边求三角形面积。

2.要求设置异常处理机制,对不符合三角形条件的提示错误信息,不予计算;对输入非正数的边提示错误,并重新输入。

四、实验步骤

(2)抛出异常WrongInput,a

(3)声明并捕捉异常WrongInput,a

五、程序分析

(1) 异常对象通常是一个class对象,通常用以下代码抛出

但是throw 表达式也可以抛出任何类型的对象, 例如(虽然很不常见)在下面的代码例子中,函数mathFunc()抛出一个枚举类型的异常对象

(2) 抛出异常的语句或其调用函数要在try块中才能被捕获。

(3)一个catch 子句由三部分构成:1)关键字catch 2)异常声明,在括号中的单个类型或单个对象声明(被称作异常声明,exception declaration)

3)复合语句中的一组语句

catch 子句的异常声明可以是一个类型声明或一个对象声明。

六、实验结果与总结

实验结果:

实验总结:

(1)C++自身有着非常强的纠错能力,发展到如今,已经建立了比较完善的异常处理机制。C++的异常情况无非两种,一种是语法错误,即程序中出现了错误的语句,函数,结构和类,

致使编译程序无法进行。另一种是运行时发生的错误,一般与算法有关。

关于语法错误,不必多说,写代码时心细一点就可以解决。C++编译器的报错机制可以让我们轻松地解决这些错误。

第二种是运行时的错误,常见的有文件打开失败、数组下标溢出、系统内存不足等等。而一旦出现这些问题,

引发算法失效、程序运行时无故停止等故障也是常有的。这就要求我们在设计软件算法全面比如针对文件打开失败的情况,保护的方法有很多种,最简单的就是使用“return”命令,告诉上层调用者函数执行失败;另外一种处理策略就是利用c++的异常机制,抛出异常。异常不能够保持在未被处理的状态,异常对于一个程序非常重要,它表示程序不能够继续正常执行。

(2)C++异常处理机制是一个用来有效地处理运行错误的非常强大且灵活的工具,它提供了更多的弹性、安全性和稳固性,克服了传统方法所带来的问题

异常的抛出和处理主要使用了以下三个关键字:Try throw catch抛出异常即检测是否产生异常,在C++中,其采用throw语句来实现,如果检测到产生异常,则抛出异常。该语句的格式为:throw 表达式。

附1:完整的原程序

相关文档
最新文档