读书人

newlisp 错误

发布时间: 2013-04-05 10:24:33 作者: rapoo

newlisp 异常

throw 和 throw-error的比较

相同点:

两者都能造成代码退出当前运行块,如果调用者没有使用catch,都能造成程序退出。

不同点:

逻辑上throw-error是因为错误退出。

而throw可以类似于其他语言中的return语句,但是必须用catch配合。


下面的测试代码用catch检测返回的错误信息,如果有错误信息,则显示并退出程序,如果没有错误信息,则显示成功:

    (catch (receive-init-request s) 'result)    (if result     (println "login failed: " result)(exit))        (println "login succeeded")


读书人网 >编程

热点推荐