获取R中已执行函数体的值

时间:2013-06-17 21:42:12

标签: r

R语言定义指出:

  

函数返回的值是函数体的值,   这通常是未指定的最终表达,例如:return()

换句话说,除非在函数调用期间某个点出现函数return(...),否则返回的值是可以在整个函数中编辑的正文值。

我是否可以在函数体中调用R中的函数,该函数在该点返回正文的值?

例如,调用这样的函数bodyVal(),请考虑以下

f <- function(x) {
    x^2
    print(bodyVal())
    x^3
    print(bodyVal())
}

f将具有以下所示的功能:

> f(4)
[1] 16
[1] 64
> print(f(4))
[1] 16
[1] 64
[1] 64

应该注意的是,在第一次通话中,f(4)的值64本身不会打印到终端。

似乎R应该能够拥有这样的功能,因为解释器必须跟踪正文的值,但我找不到任何文档。

0 个答案:

没有答案