abort,exit这些函数的区别是什么呀?搞不懂~~`

解决方案 »

  1.   

    自己看效果:
      try
        //Exit;
        Abort;
      except
        ShowMessage('aaa');
      end;
      

  2.   

    最简单的例子,在数据集控件adoquery中有两个事件 onbeforepost  onafterpost
    如果遇到不符合你要求情况,你要终止整个保存就用abort ,那样onafterpost就不会运行(也不会保存) ,而如果你用exit ,仅仅是onbeforepost  过程不运行了,还是会保存并触发onafterpost事件例子2:
    procedure aaaaa;
    begin
      //选择下面一个
      //exit;   //仅仅终止本过程(函数)
      //abort;   //所有程序到此停止
    end;procedure bbb;
    begin
      showmessage('message');
    end;procedure ccc;
    begin
      aaa; // 如果aaa中用exit还是会show信息的,而用abort就不会
      bbb;
    end;
      

  3.   

    在Try ..Except结构中Abort相当于引发一个异常会执行Except下的代码而Exit不会