有没有办法向R6类添加静态方法?例如,可以像
MyClass$method()
代替
myinstance <- MyClass$new()
myinstance$method()
我不是R6专家,但是由于每个R6类都是一个环境,因此您可以在此环境中添加任何想要的东西。
喜欢:
MyClass$my_static_method <- function(x) { x + 2}
MyClass$my_static_method(1)
#[1] 3
但是该方法不适用于该类的实例:
instance1 <- MyClass$new()
instance1$my_static_method(1)
# Error: attempt to apply non-function
您应该注意类环境中的现有对象。查看已定义的用途ls(MyClass)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句