快速业务通道

掌握C++ builder的除错艺术(1)

作者 佚名技术 来源 程序设计 浏览 发布时间 2012-06-30
终用户能够向您报告错误。我敢保证您痛恨“oh,有个什么框子上说在什么地址发生了个什么异常错误”这样的报告。其实完全可以很容易的实现更好的情况,也不会限制你打算如何处理它。第一步是在你的主窗体(例如:工程的自动创建窗体列表中的第一个form)中创建一个象如下这样的函数:

void __fastcall applevelexceptionhandler(tobject *sender, exception *e)
{
}

然后加入合适的代码来显示错误(e->message),错误类型(记住e.classname(),只有此时才是它的e.classname()),和联系您的详细方法及其他你想加上的任何东西。第二步当然是将它与系统挂钩,这在c++builder里很容易实现:

application->onexception=applevelexceptionhandler;

将上一行代码加到form的 oncreate 事件中。不要吝啬!你加了这一行后几乎可以保证不会错过任何异常,而且无论哪里异常处理失败时它都会出现在你的眼前!

你的回合

现在你已经得到所有你刚才学习的有用的信息了。是时候开始把它们加到你现在的工程里去了,否则就忘掉吧,要不然,就把它变成编程习惯的一部分。这是你的自由!

在这个系列的下个部分,我将讨论内建除错器的使用,来看看你的程序运行时都干些什么,如何单步跟踪代码、设置断点、察看变量、和会把新手们吓的人事不醒的所有其他有趣的工具。直到这里,您的bugs也许只是小虫子了吧。

原著:bill king

翻译:史平洋 - cker

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号