Edw*_*rey 2 f# exception-handling rethrow
我如何帮助F#编译器解释重新抛出异常没有返回值?
例如,考虑包装操作以记录异常:
let doDivision() =
try
2 / 0
with ex ->
log ex
reraise
Run Code Online (Sandbox Code Playgroud)
编译器报告此错误reraise:
这个表达式应该有类型,
int但这里有类型unit -> 'a
"再加"是一种功能.你需要将单位传递给它.
let doDivision() =
try
2 / 0
with ex ->
log ex
reraise ()
Run Code Online (Sandbox Code Playgroud)