Я пытаюсь проследить значение экземпляра переменных @x
, @y
и @z
во время выполнения программы:Каковы значения этих переменных экземпляра Ruby во время выполнения?
class S
def initialize(theX, theY)
@x = theX + 2
@y = theY + 3
end
def f(n)
@x = n * @x + @y
@y = @x + (n + 1) * @y
end
def to_s
return (@y + 1).to_s + " " + (@x + 2).to_s
end
end
class T < S
def initialize
super(1, 4)
@z = @x + @y + 3
end
def f(m)
super(3)
@z *= m
end
def to_s
return super + " " + (@z + 3).to_s
end
end
s = S.new(6, 5)
s.f(3)
print s, "\n"
t = T.new
t.f(7)
print t, "\n"
Конечный результат:
65 34
45 18 94
Можно ли предоставить шаг- пошаговая иллюстрация того, как выполнение программы приводит к этим значениям?
вы можете показать мне, как переменная трассировка делается? – user3308300