使用goto 使异常的处理更友善

转载 2006年05月26日 10:14:00

目前我们大多数的异常处理,就是抛出这个异常。或者以一个更友好的方式显示这个异常,然后整个进程中断。但是,对业务逻辑来说,有时候仅仅这么做还是不够的。

我目前的做法是,在扑捉异常里面,出一个选择对话框,让用户可以有更多选择:
1、重新再作触发异常的这一步;
2、跳过这个异常继续执行;
3、中断整个进程的执行;

以一个给多人发邮件的客户端程序为例:
有时候,异常是由于当前网络问题、或者邮件服务器顺间不可用造成的。这时候,选择一就很有帮助了。
有时候,异常是由于用户的邮件格式不正确造成的,但是我让然想继续执行,选择二就很有帮助了。
至于选择三,这是我们大家最常用的,就不用说了。

用伪代码来实现,则是下面代码:

for(.....) { Work: try{ // 需要做的具体事情 CSDN.SendMessage...... }catch (Exception e) { // 出一个窗口让用户选择,并罗列异常信息 if(.....){ // 2、跳过这个异常继续执行; continue; }else if (.....){ // 1、重新再作触发异常的这一步; goto Work; }else{ // 3、 中断整个进程的执行; break; } } }

相关文章推荐

C#异常处理“try catch”与vb ”on error goto“

C#跟其他语言一样,在编写代码的过程中都会或多或少的出现语法或者逻辑上的错误,如果盲目相信自己的技术只能让这些异常的程序继续存在,最终导致系统无法正常运行甚至瘫痪。技术上要保证代码不出错的同时我们也要...

详解C的异常处理机制(goto\setjmp longjmp)

来自希赛网,作者王胜祥。 1 C语言中的异常处理机制     在这之前的所有文章中,都是阐述关于C++的异常处理机制。的确,在C++语言中,它提供的异常处理的模型是非常完善的,主人公阿愚因此才和“...

为什么使用goto语句作错误处理 by明智

*  *本文版权归于凌阳教育和本作者所有。如转载请注明  *原作者和原文链接 http://blog.csdn.NET/edudriver/article/details/207176...

c#goto语句使用

  • 2013-06-08 16:13
  • 41KB
  • 下载

ARM中断学习一/[友善2440test中的中断处理部分]

《 嵌入式开源网:www.embedos.org ,不可错过的网站,有兴趣的朋友还可以做版主,开源、共享、免费!——博主推荐 》一直在看2440的中断处理部分,不懂的实在太多了,百度到这篇文章,实在有...

友善之臂tiny4412使用DNW将uboot烧录到emmc

在上一篇博客的基础上,将uboot烧录到板上的emmc 上一篇博客地址:http://blog.csdn.net/chicken_wing_is_good/article/details/50082...

批处理中常用命令介绍(Echo、rem、goto、call、pause、if、for)

1. Echo :显示当前ECHO的状态:ECHO ON 或者ECHO OFF 。 2. ECHO ON :ECHO状态设为ON,将显示命令行(如每行前的C:\>等类似标志)。 3. ECHO O...

【编程好习惯】恰当使用goto语句

本文出自 “至简李云” 博客,请务必保留此出处http://yunli.blog.51cto.com/831344/248828 goto语句在C/C++语言中可谓是“臭名昭著”,乃至有...

如何写优雅的代码(1)——灵活使用goto和__try:评论反馈

//========================================================================     //TITLE:     //    ...

使用goto实现循环,跳转语句

/*计算从0-10的和*/ do-while语句:
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)