问:我希望我不是唯一一个对Ruby块部分中的最后一个代码挑战感到困惑的人。我以为我知道我必须做的事情,但是似乎什么也没用。
这是Treehouse要求我们执行的操作:“在scream方法中,如果将块发送到scream方法中,则修改yield语句以将怪物实例发送到块。”
我在'yield'关键字之后添加了'monster'甚至是'Monster.new(“ Fluffy”)。有人会认为这就是“怪物实例”的含义。
有什么建议?
答:如果要在yield之后添加Monster.new,您将向该块发送一个全新的,未经修饰的,未命名的(可能不起作用)。
相反,如果将块发送到scream方法,则要求您将当前的Monster实例发送到块。在这种情况下,您可以将self关键字与block_given一起使用?Jason在上一个视频中显示的方法。