经过多年的Java / C ++,我已经把手转向了R.我正在努力使用异常处理来保护我的操作流程。也许,我正在考虑这个过多的Java帽子。
本质上,如果函数的一个参数不正确地输入,我在函数的开头寻找一个throw运算符。我正在寻找的结构(不起作用的代码)的例子:
myFunction <- function(someListArgument) {
if(class(someListArgument) != "List") {
throw(paste("Argument not a list: ", class(someListArgument)))
}
}
tryCatch({myFunction(c("whoops!"))},
error = function(cond) {},
....
)
我真的很喜欢代码的划分,因为我正在编写一个R-> MySQL DBMS API,如果提供了不正确的数据类型,我希望保持良好的控制和信息性错误报告。
由于