C++从入门到精通 系列 第20章.ppt_第1页
C++从入门到精通 系列 第20章.ppt_第2页
C++从入门到精通 系列 第20章.ppt_第3页
C++从入门到精通 系列 第20章.ppt_第4页
C++从入门到精通 系列 第20章.ppt_第5页
已阅读5页,还剩28页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第20章错误终止子异常处理、异常的类型异常处理的基本思想异常处理多重异常的捕获构造函数异常处理除错器样本应用、第20章错误终止子异常处理的基本思想异常处理多重异常的捕获构造函数异常处理除错器样本应用、 第20章错误终止子异常处理异常的类型异常处理的基本思想异常处理多重异常的捕获构造函数异常处理调试器样本应用,第20章错误终止子异常处理,异常的类型异常处理多重异常的捕获构造函数异常处理调试器样本应用, 第20章错误终止子异常处理异常的类型异常处理的基本思想异常处理多重异常的捕获构造函数异常处理调试器样本应用,第20章错误终止子异常处理,异常的类型异常处理多重异常的捕获构造函数异常处理调试器样本应

2、用, 第20章错误终止子异常处理异常的类型异常处理的基本思想异常处理多重异常的捕获构造函数异常处理调试样本应用,第20章错误终止子异常处理多重异常的捕获构造函数异常处理调试样本应用,第20章错误终止子异常处理,目前我们掌握了程序计程仪程序的编制,但这些个的程序计程仪程序脆弱,无法预料不能放置应用程序的崩溃吗? 在事故发生时安全地结束计程仪程序吗? 还是选择更好的解决方法呢? 本章详细介绍了如何合理有效地处理这些个问题。 请访问(1)一个异常的类型,20.1.1异常的分类是什么,20.1.1异常是什么。 20.1.1异常是什么?(2)在数组初始化时分配内存容量,但由于某种原因,操作失败。 例如,

3、如果您申请的内存太大而无法正常分配内存,则堆计程仪程序也报告错误,这也是异常的。 20.1.1异常是什么?(3)网站数据库到某个路径的文件中,但该文件处于摇滾乐状态(也网站数据库其他plum ),此时也不能操作。 这也是异常的。 20.1.2异常的分类、异常的基本概念比较简单,如在计程仪柱的资源分配时发生的,如内存分配和文件摇滾乐,在向数组元素网站数据库时超过了上下限的限制等。 从发生异常的时刻开始,可以简单地将异常分为以下两种情况。 执行语法错误时发生错误,20.2异常处理的基本思想是,现在发生异常时,选择如何处理。 您可能希望立即终止计程仪计划的执行。您可以将异常返回到上一级函数。您也可以

4、调用预准备的错误处理函数来决定是停止执行还是继续执行。 20.2异常处理的基本思想,满足以下几点。 将可能发生异常的查询密码和异常处理查询密码分离,进一步明确构造。 通过将内层错误的处理直接上载到指定的外层进行处理,使处理流程迅速且简洁。 一般来说,我们的处理方法是将错误命令返回一层,上传到每一层指定的层,这样,如果层数过多,就需要做出非常多的判断,如果发生查询密码变得复杂,难以周密考虑的异常,则需要取得反常的信息,用这样,不仅可以使程序计程仪程序更安全、更结实,而且在程序计程仪程序发生问题时也容易找到原因,得到修正时可能发生的放箭。、20.3异常处理,使用20.3.1异常处理文本子摇滾乐20

5、.3.2trycatch处理异常,并且20.3.1异常处理文本子摇滾乐,c提供这三个文本子摇滾乐try、catch和throw,它们提供处理异常的能力可以按一定的顺序创建查询密码定径套来处理异常,也可以分散在发生错误的地方处理异常,然后一个接一个向上抛出异常。 20.3.1用于封摇滾乐异常处理语句子摇滾乐、try语句子摇滾乐、异常。 在计程仪程序中,为了处理异常,必须先将可能发生异常的语句子摇滾乐信息帧化。 如果不信息帧化,就找不到异常的存在。 catch语句布摇滾乐。 定义例外处理。 将发生异常后的处理语句放置在catch子摇滾乐中,在抛出异常后进行类型匹配,捕获并处理异常。 throw语句

6、布摇滾乐。 抛出例外。 对可能发生异常的语句进行错误检查,如果有错误则抛出异常。 前两个步骤由一个函数定义,抛出异常后可以在函数之间调用。20.3.1异常处理语句子摇滾乐、1. try语句子摇滾乐用于包围可能发生问题的查询密码区域。 tryembeddedthrow语句中的语句、20.3.1异常处理语句子摇滾乐和2. throw语句子摇滾乐用于抛出异常。 格式为(1)带表达式的throw type exception; (2)无表达式throw;20.3.1异常处理语句子摇滾乐、3. catch语句子摇滾乐用于处理在try子摇滾乐中抛出的异常。 catch (type exception )与

7、throw抛出的exception语句子摇滾乐相匹配。 catch (.)符合throw抛出的任何类型的语句子摇滾乐,20.3.2trycatch处理异常,trycatch处理异常的格式为try throw type1 param1; 超类型参数; catch (类型1参数1 )语句子摇滾乐1。 catch (类型参数)语句子摇滾乐n; catch (. )与throw抛出的任何类型的语句块匹配,其中type1,typen是不可接受的数据类型,param1,paramn是具体的残奥参数值。 使用20.3.2trycatch处理异常,【样品20-1】简单异常处理【样品20-2除法的异常,捕获20

8、.4多重异常,c异常处理的优点是能够捕获各种信息的异常。 throw语句可用于所属trycatch函数内层的调用函数,但必须确保与throw语句同层的catch语句块紧密匹配,并及时捕获异常。20.4多重异常的捕捉、【例20-3】多重异常的捕捉、20.5异常的再抛、c例外处理的嵌套结构中,其规则是外层的throw语句抛出的例外由外层的catch捕捉,内层的catch块捕捉的例外由类try块摇滾乐的throw 如果要在外层查询密码而不是当前层的catch块中处理内层抛出的异常,则必须使用异常的层传递方法。 这是throw语句没有表达式的格式。 在catch中嵌入没有表达式的throw语句意味着当

9、前catch bub摇滾乐在门户站中捕获的类型信息,throw将此类型的信息中继抛出到更高级别的相应类型的门户站catch捕获。 特定的异常从内层传到了外层的需要的地方。20.5异常的再掷、【例20-4】异常的再掷、20.6构造器异常处理、构造器为特殊的函数,在对象创建时自动调用构造器,对对象分配存储区域和初始化操作,然后网站数据库到对象的成员属性和成员方法等。 如果构造器发生异常,那么后续的操作将毫无意义,为构造器分配空间、初始化合法性检查都可能发生错误,我们需要异常处理来解决这些个错误。 20.6构造器异常处理,【样本20-5】构造器异常处理c系统具有异常类,利用现有的异常资源,可以处理常

10、见的异常,这些个只要不使程序设计师自身抛出异常,使用try语句子摇滾乐定义异常发生的范围,就可以发生包含名称空间STD;20.7调试器、调试器(debugger )是通讯端口单步运行应用程序查询密码以及查看查询密码中变量内容的开发环境。 有源代码级别的调试和二进制调试。 大多数开发环境都具有更强大的调试程序,可以在运行调试程序之前加载原代码。 您还可以设置可以显示丰富信息的程序断点,包括显示每个变量的当前值和使用情况、显示数据结构、显示类成员的数据、显示指针值、检查内存、选择单行查询密码调试以及调用跳转蕾丝花边查询密码。 调试器有助于使普通堆计程仪更加牢固。20.8综合应用、【样本20-6】读取文件异常【样本20-7】读取写入文件异常、20.10与我乘车、Visual C 6.0新设【C Source File】源程序,实现以下功能。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论