我需要计算对函数的调用次数,并在函数中使用它,但不必显式。例如。例:

f <- function(i,ncall) {
 print(paste("call to function number", ncall))
 i = i^2
 return(i)
}

print(f(3,ncall=1))
print(f(4,ncall=2))


我想这样做,但不是每次都在ncall=N中提供f(a,N)。这没有宇宙的目的,只是想知道这是否有可能。谢谢!

最佳答案

这是否更好?

ncall <- 1
f <- function(i) {
  print(paste("call to function number", ncall))
  i <- i^2
  ncall <<- ncall + 1
  i
}

f(3)
# [1] "call to function number 1"
# [1] 9
f(4)
# [1] "call to function number 2"
# [1] 16

08-24 21:58