yield返回的就是每次运算的值
以下引用神思于2008-4-16 19:21:09的发言:
对了问个问题``
yield返回的是啥..?
对迭代器不太了解
def orz
yield "otz"
yield "otz"
end
orz{ |j| p j }
貌似是yield的时候将值传递到块中...
但不像return返回
唯一试过用的方法就是酱紫...
class Game_Actor
def get_armors
yield $data_armors[@armor1_id] if @armor1_id != 0
yield $data_armors[@armor2_id] if @armor2_id != 0
yield $data_armors[@armor3_id] if @armor3_id != 0
yield $data_armors[@armor4_id] if @armor4_id != 0
end
end
actor.get_armors{ |armor| armor.name }............
有时候还是会有一点方便的```
[本贴由作者于 2008-4-16 19:24:46 最后编辑]
欢迎光临 Project1 (https://rpg.blue/) | Powered by Discuz! X3.1 |