Delphi教程—程序异常处理与调试技术.pptVIP

Delphi教程—程序异常处理与调试技术.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
  包括由程序系统自动触发以及程序员使用raise指令去触发的异常,故在本区可根据状况条件来使用Raise指令。然而在本区使用raise指令,或者由程序系统自动触发某些异常时,程序系统并不一定会自动处理这些异常,这时程序就有可能会异常中断,因此需要“Except…End”区中捕捉异常,并且对异常作适当处理;也可仿照“Try…Finally…End”语法,在“Except…End”区对“Try…Except”区内被触发的异常作再次触发(Reraise)的操作,即再次使用Raise指令,由程序系统自动捕捉异常,以信息对话框显示出异常信息,然后让程序避开异常,而不致于中断程序。 2.“Except…End”区中的语句   在“Except…End”区中,可以有多个语句,但此处主要是放置用来捕捉异常的语句,其目的是让程序仍自行捕捉异常,根据异常的类型决定要做的处理操作,而此种语句也有它特定的语法: On 异常对象标识符:类型 do //异常对象标识符可有可无 语句; //(on identifier:type do statement)  上述语法是表示当指定类型的异常被触发时,就执行保留字“do”后面这个语句。反之若没有这种类型的异常被触发,则不会执行“do”后面的语句。在捕捉异常的语句之后,还可以有一个“Else”区,在这个区域内可以有一般的语句(包括raise指令)。   若本区域内没有“Else”区域时,只要其内有捕捉异常的语句存在,就不允许有一般语句(包括raise指令);倘若本区内若有“Else”区,则除了“Else”区域之外,并不允许有一般语句存在于“Except…Else”区域,否则将导致编译错误。 6.5 程序调试   Delphi提供了一个功能强大的内置调试器(Integrated Debugger) ,该调试器可以方便地查找程序中出现的运行时间错误和逻辑错误。所谓运行时间错误是指程序能正常编译但在运行时出错。逻辑错误是指程序设计和实现上的错误。 6.5.1调试的准备 1.激活内置调试器   方法是:在Delphi集成开发环境中,选中【Tools】|【Debugger Options】|【General】页的【Integrated Debugging】复选框。默认情况下该框被选中。 2.设置编译和调试选项  默认情况下,Delphi对有些错误和信息不给出调试信息。可改变Delphi默认设置。单击【Project】|【Options】|【Compiler】页。 (1)Runtime Errors区域  Range checking:检查数组或是字符串的下标是否越界,默认时不检测。  I/O checking:检测输入输出错误,默认检测  Overflow checking:整型操作溢出检测,默认不检测。选中该复选框调试器将对整数运算是否溢出做检测,默认下不报告错误。 (2)Debugging区域  设置调试的信息。默认时几乎全部选中。一般无须改变该区域的选项设置。  Debug information:表产生调试信息。如果Debug Information 选中会在单元文件 (.dcu)  中放置调试信息,文件字节变大但不影响速度。   Local symbols:产生局部变量的调试信息。Local Symbols选中会添加与所在类、过程、函数及对象方法中定义的标识符等有关调试信息。在程序调试时调试器会使用这些信息,但这些信息不会添加到可执行文件中。除非在【Project】|【Options】|【Linker】页面中选中【Include TD32 Debug Info】选项,选中了此选项就可以使用TD32来调试。   Reference info/Definitions only:用来产生  供Code Browser, Code Explorer and Project Browser使用的标识符引用信息。如果Reference Info和Definitions Only 都被选中,则编译器将记录标识符定义位置信息。如果仅选中了 Reference Info,表示编译器不仅记录标识符定义的位置,同时将记录标识符被引用的信息。如果不选中Debug Information 和 Local Symbols 选项,仅选中该选项将不起作用。 Assertions:产生断言的调试代码。 Use Debug DCUs:使用连接的Dcu文件作为调试路径。必须在【Tools】|【Debugger Options】|【General】页中指定调试文件的路径。一般不选中该项。 (3)Messages 区域  Show Hints:使编译器产生提示信息。例如检测在过程或函数中声明了但一直没有使用的变量信息,

文档评论(0)

胖鸥 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档