请问exit和abort有什么区别,那个更好

解决方案 »

  1.   

    The Abort method aborts the current operation. This method is overridden in the descendant classes, because each protocol has different requirements to abort an operation.Exit passes control away from the current procedure, not merely the current block. But Exit does not violate the flow of control dictated by a try..finally construct; if Exit is called inside the try clause, the finally clause is still executed.帮你考下来了,^_^慢慢看。
      

  2.   

    Abort :引起意外的放弃处理
    Exit:立即从当前的语句块中退出.
    真是服了CSDN的了,这问题为什么不答啊。
      

  3.   

    Abort :引起意外的放弃处理
    Exit:立即从当前的语句块中退出.
    就这么简单。帮助的大体意思也是这样。
      

  4.   

    自我理解abort:忽略错误放弃处理;exit:退出当前处理的语句。
      

  5.   

    Abort :引起意外的放弃处理
    Exit:立即从当前的语句块中退出.
    就这么简单。
      

  6.   

    Exit退出本函数。
    Abort产生一个沉默的异常,不仅仅退出本函数,而且一直回朔堆栈,直到被一个错误捕获程序捕获,但是abort是一个沉默的异常,他已经有默认的处理方式,不会发出明显的异常。因此,我们自己的组件中常常这样,是很不对的try
    ...
    except
      on e:Exception do ShowMessage(E.Message);
    end;这种方式,会把Abort抛出错误的,正确的做法,如果要用对话框引起注意,可以重新raise错误,实在需要用自己的对话框,那么必须自定义一个错误类型,并且仅仅针对自定义的类型进行处理,其他的错误类型留给默认的错误处理程序处理。Abort经常用在一些事件处理程序中,因为可能这个事件的处理模型没有提供放弃操作,因此使用abort可以导致上层函数放弃操作,但是也不是绝对的,使用abort需要经验。
      

  7.   

    这两个东东,准确的说是不一样的,举例而言
    你在beforepost里边写如果只写exit,则beforepost过程是退出去了,dataset一样要post,如果在加上abort,则dataset的post就不会不执行了
      

  8.   

    在窗体的ONCLOSE事件分别测试:Abort和exit就能看出来..
    Abort会回滚上面所执行的,Exit不会...