这可能不是正确的术语,但希望我可以理解我的观点.
我经常最终做类似的事情:
myVar = 1
f <- function(myvar) { return(myVar); }
# f(2) = 1 now
Run Code Online (Sandbox Code Playgroud)
R愉快地使用了函数范围之外的变量,这让我摸不着头脑,想知道我怎么可能得到我的结果.
是否有任何选项说"强迫我只使用之前已在此功能范围内分配值的变量"?use strict例如,Perl就是这样做的.但我不知道R有相当于my.
编辑:谢谢,我知道我对他们的看法不同.实际上,这个例子是专门为说明这个问题而创建的!
我想知道当我这样做时R是否可以自动警告我.
编辑2:此外,如果Rkward或其他IDE提供此功能,我也想知道.
如果函数使用函数体中未声明的变量,是否有一种方法在R中弹出错误消息:即,我希望有人标记这种类型的函数
aha<-function(p){
return(p+n)
}
Run Code Online (Sandbox Code Playgroud)
看到; 如果恰好有一个"n"变量位于某个地方,aha(p = 2)会给我一个"答案",因为R只会从那个被称为"环境"的神秘地方取"n"