我基本上想用Reference Class创建一个新类型的列表。我还想避免使用静态方法并在引用类中定义私有函数,而不是使用S3对象,例如:
weirdList<-setRefClass("weirdList"
,contains="list"
,methods=list(
,initialize=function(...){
return(list(...))
},
sumup=function(){
sum(list()) # don't know how to write this
}))
new_list<-weirdList(a=1,b=2,c=3)
new_list
# expecting output:
# $a
# [1] 1
#
# $b
# [1] 2
#
# $c
# [1] 3
new_list$sumup()
# I want to output 6
显然上述方法不起作用。我发现很难“克隆”或修改原始方法。有谁知道怎么做?提前谢谢。