注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

yeye55的博客

编程就象品一杯清茶,清淡却又深厚。

 
 
 

日志

 
 
关于我

宅男一只,喜欢编程。没事的时候就喜欢抱着电脑看看电影、看看动漫、听听音乐、打打网游、逛逛论坛。清静的时候喜欢专研编程技术,但是发现自己至今仍然只是一只三脚猫。

网易考拉推荐

Delphi XE4 语言指南 - 17 编译警告和错误  

2014-11-25 20:20:07|  分类: XE4参考指南 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

  本指南名称:Delphi XE4 语言指南,作者:叶叶,于2014年11月25日在网易博客上发表。页面地址:http://yeye55blog.blog.163.com/blog/static/197241021201410252936156/ 。本指南全文可以在上述页面中下载。请尊重他人劳动成果,转载或引用时请注明出处。

17 编译警告和错误

  在使用Delphi时可能会面对许多各种类型的编译器的警告和错误。如果想要选择被通知的Delphi编译器的警告,那么可以使用IDE中的项目选项对话框(Project > Options > Delphi Compiler > Hints and Warnings)来进行设置。

  某些运行时错误会导致Delphi程序显示一个错误消息然后被终止。运行时错误的格式如下所示。

Runtime error nnn at xxxxxxxx

  其中的nnn是运行时错误的编号,其中的xxxxxxxx是运行时错误的地址。引用了System.SysUtils单元的应用程序会将大多数运行时错误映射到异常中,这样可以让应用程序解决错误而不需要被终止。Delphi的运行时错误分为以下几类。

  一、输入输出错误,编号从100至149。

  二、致命错误,编号从200至255。

  三、操作系统错误。

  如果一条语句是在编译指令{$I+}状态下编译的,那么输入输出错误将会导致一个异常被引发。如果应用程序没有引用System.SysUtils单元,那么该异常将会导致应用程序被终止。在{$I-}状态下,程序会继续运行,并且会将该错误通过IOResult函数来进行报告。

  致命错误会导致程序被立即终止。引用了System.SysUtils单元的应用程序(例如大多数的GUI应用程序)会将这些错误映射到异常中。对于所产生的每一条错误的说明,请参考对应异常的说明文档。

  除了输入输出错误和致命错误之外的其他所有错误所报告的错误代码是通过操作系统返回的。操作系统错误代码是调用操作系统函数的返回值。可以通过调用System单元中声明的GetLastError函数来获取最近发生的错误的错误代码。当最近一次API调用失败后,如果需要引发一个异常,而不是获取错误代码,那么可以调用System.SysUtils单元中声明的RaiseLastOSError过程来代替。GetLastError函数返回的错误代码值依赖于操作系统。可以通过调用System.SysUtils单元中声明的SysErrorMessage函数来获取一个与错误代码相关联的错误字符串。如果要检查一个从Win32 API函数调用中返回的值,并且在该值表示一个错误时引发一个EWin32Error异常,那么可以调用System.SysUtils单元中声明的Win32Check函数。

  关于Delphi编译器所产生的错误消息和警告消息的列表请参考《Error and Warning Messages[18]》。

  评论这张
 
阅读(255)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017