我正在通过“学习Ruby困难的方法”,并且有关于调用对象内部方法的问题。我希望有人能够对此有所了解。Ruby - 调用对象内部的方法并使用.call()
The code是:
def play()
next_room = @start
while true
puts "\n--------"
room = method(next_room)
next_room = room.call()
end
end
我知道while
循环中这种方法是什么使得在游戏继续其不同的领域。我的问题是,为什么room.call()
必须先传递给next_room
才能正常工作?为什么不只是做room.call()
让游戏继续到下一个领域?
我自己测试了一下,我不明白为什么它不能这样工作。
非常感谢您的深入解释。我明白这是如何工作的! –