library(R6)
pre <- R6Class("pre",
public = list(
dbl = NULL,
initialize = function(){},
functionA = function(){},
functionB = function() {}
) )
这是我想要的代码:
FunctionA ()
{
FunctionB ()
}
但这里有一个错误。
错误:找不到功能“functionB”
请让我知道如何修复它。
答案 0 :(得分:0)
FunctionA = function()
{
self$FunctionB ()
}
应该做的伎俩。除非您创建班级non-portable,否则必须将self
放在成员函数的名称前面。这是一个完整的例子
library(R6)
pre <- R6Class(public = list(
functionA = function(){self$functionB()},
functionB = function(){"output from B"}
))
obj <- pre$new()
obj$functionA()
# "output from B"
obj$functionB()
# "output from B"