Ruby - @var , self.var en clase definada mediante Struct

 
Vista:
sin imagen de perfil

@var , self.var en clase definada mediante Struct

Publicado por juan leiva (2 intervenciones) el 01/06/2018 03:55:54
Tengo dos clases identicas, la única diferencia es que una es definida en la forma tradicional (class nombre_clase). Y la otra mediante Struct (nombre_clase = Struct.new()). La duda la tengo en el metodo mutable que presento a continuación

1
2
3
4
def add!(punto)                          # punto(x,y)
   @x += punto.x
   @y += punto.y
end

En la forma tradicional puedo ocupar indistintamente @x como self.x para modificar cada una de las componentes del punto original. Sin embargo en la definida mediante Struct, solo puedo hacerlo con self.x para modificar las componentes. ¿Por que?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder