3

我有以下(无意义的)功能,在R

say <- function (string){
  if(!exists("string")){
    stop("no output string was specified")
  }
  cat(string)
}

这在检查字符串对象是否实际存在方面非常好。但是,如果同名对象已经在工作区中浮动,即使函数中没有定义该错误,它也会忽略该错误。

我可以这样使 exists() 函数只在对象的函数空间中查找吗?

4

1 回答 1

5

你正在寻找missing. 其他人则这样做:

say <- function(string=NULL){
  if(is.null(string)){
    stop("no output string was specified")
  }
  cat(string)
}
于 2012-04-05T22:22:25.780 回答