8
如果我检查sqrt
功能的环境中,我得到NULL
:什么是NULL环境?
> environment(sqrt)
NULL
在另一方面,该功能split
这也是在基础包中发现有环境:
> environment(split)
<environment: namespace:base>
为什么这两个函数有不同的环境,NULL环境是什么意思?
如果我检查sqrt
功能的环境中,我得到NULL
:什么是NULL环境?
> environment(sqrt)
NULL
在另一方面,该功能split
这也是在基础包中发现有环境:
> environment(split)
<environment: namespace:base>
为什么这两个函数有不同的环境,NULL环境是什么意思?
sqrt
是一个原始函数,没有R代码。每Hadley Wickham's advanced R页:
基本功能
有一个例外,其功能有三个组成部分的规则。原始函数,如
sum()
,直接调用 C代码与.Primitive(
)并且不包含R代码。因此 其formals()
,body()
和environment()
都是NULL
。