【发布时间】:2014-10-28 19:45:22
【问题描述】:
为什么下面的代码没有返回2,而是将警告作为错误处理?
tryCatch({
1+1
warning("test")
return(2)
}, error=function(e){
print("error")
}, finally = {})
[1] "error"
Warning message:
In doTryCatch(return(expr), name, parentenv, handler) : test
如何只处理错误而忽略警告?
【问题讨论】:
-
不要使用
return。只需2就足够了。 -
@jbaums 在意识到我的愚蠢之后,我意识到您的建议完全解决了问题,因为错误来自他们使用函数之外的 return。