09ch13第13讲异常处理

09ch13第13讲异常处理

ID:36174987

大小:212.50 KB

页数:13页

时间:2019-05-06

09ch13第13讲异常处理_第1页
09ch13第13讲异常处理_第2页
09ch13第13讲异常处理_第3页
09ch13第13讲异常处理_第4页
09ch13第13讲异常处理_第5页
资源描述:

《09ch13第13讲异常处理》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第13讲异常处理介绍C++语言的异常处理。介绍异常的基本概念。介绍异常的捕获机制、使用try-catch语句捕获异常以及如何使用throw语句抛出异常。介绍异常的四种处理规则。异常的基本概念所谓异常,是指程序在运行过程中遇到的不正常情况。比如,除数为0、数组越界、存储空间耗尽、期望输入一个int型数据,结果却输入了一个字符串等。除数为零时的异常案例名称:除数为零时的异常程序名称:proj5_01.cpp#includevoidmain(){inta=0;intb=1;intc=b/a;}异常的实现C++语言中使用异常需要经历3个步骤:(1)定义异常(try语句

2、块)将可能产生错误的语句放在try块中;(2)定义异常处理(catch语句块)将异常处理的语句放在catch块中,以便异常被传递过来时处理。(3)抛出异常(throw语句块)检测是否产生异常,若是,则抛出异常。异常的抛出与捕获在可能会出现异常的地方,创建异常对象,并用throw语句将它抛出,其格式为:“throw<对象>;”。try块的作用就在异常的抛出和处理之间架起一座连接的桥梁。它由关键字try、花括号“{}”和一组能够抛出异常的语句序列组成。处理异常的catch语句紧跟在try块的后面,其格式为:try{//语句序列,含有throw语句}catch(<异常声明>){//处理语句

3、}使用try-catch语句案例名称:使用try-catch语句程序名称:proj5_02.cpp#includevoidmain(){try{inta=0;throw(a);}catch(intex){cout<<"捕获到a="<doubleDiv(double,double);voidmain(){try{cout<<"7.3/2.0="<

5、_04.cpp#includevoidmain(){try{inta=9;throwa;floatf=0.5F;throwf;}catch(floatk){cout<<"出现异常!float";}catch(intk){cout<<"出现异常!int";}cout<<"程序执行成功";}异常的处理规则(2)在catch行的括号中包含数据类型声明,它与函数定义中参数声明起的作用相同,捕获是利用数据类型匹配实现的。在数据类型之后放参数名是可选的。参数名使被捕获的对象在能够在catch体中使用。比如:l“throw10;”被catch(intk)处理程序

6、捕获;l“throw"abc"”被catch(char*p)处理程序捕获;l“throwstring("abc")”被catch(stringa)处理程序捕获异常的处理规则(3)如果一个函数抛出一个异常,但是在异常处理中没有与之匹配的catch,则该程序通常调用系统abort()函数中止。案例名称:找不到与之匹配的catch块程序名称:proj5_05.cpp#includevoidmain(){try{char*pString="abcdef";throw(pString);}catch(intk){cout<<"出现异常!int";}cout<<"程序

7、执行成功";}异常的处理规则(4)程序中捕获异常执行catch语句以后,就会自动catch语句后面的语句。本讲需要了解异常的基本概念,什么时候产生异常以及异常的处理方法。掌握使用throw语句抛出异常,熟练掌握使用try-catch结构捕获异常的方法和用法。掌握异常的四种处理规则小结

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。