如何在APL中使用Try/Except
使用
:Trap
不起作用,为什么以及如何修复?
代码:
∇F←R
:Trap
⎕←1÷0
:Catch
⎕←'Error'
:EndTrap
F←0
∇
R
:TRAP 与 :ELSE 一起使用,而不是 :CATCH
示例:
:Trap 11 ⍝ 11: DOMAIN ERROR: Divide by zero
_←12÷0
:Else
⎕←'Error'
:EndTrap
⎕←'No error'
它被称为陷阱语句。更多文档在这里:https://help.dyalog.com/latest/Content/Language/Control%20Structures/trap.htm#TrapStatement
还有另一种方法可以做到这一点。那就是使用陷阱事件(⎕TRAP)。更多文档在这里:https://help.dyalog.com/latest/Content/Language/System%20Functions/trap.htm