类中的R Setter方法

时间:2019-05-27 19:59:15

标签: r class setter

当我在类中编写setter方法时,setter方法不会更改值。我只是在这里找不到错误。

point <- function(x,y){
  structure(class = "point", list(
    # attributes
    x = x,
    y = y,
    # methods
    get_x = function() paste("(", x,",",y,")"),
    set_x = function(x,y){ self.x = x; self.y =  y}

  ))}


> p <- point(0,1)
> p$get_x()
[1] "( 0 , 1 )"

> p$set_x(6,5)
> p$get_x()

[1] "( 0 , 1 )"

1 个答案:

答案 0 :(得分:1)

尝试对您的代码进行此更改。
在函数set_x中,是在函数x中创建的变量ypoint的值被分配了<<-而不是{{1 }}和x存在于y中。

.GlobalEnv