6
我想在Ruby中找到某种类型的所有子类,称为Command
,并且我遇到了下面的代码,它完美地实现了这个技巧,但是我并不真正了解它是如何工作的,主要是class << [Subtype]
部分。我曾试着读过这本书,但我觉得还有一些我失踪的Ruby魔法。是否有人可以给我讲解一下:-)Ruby enum_for混淆
ObjectSpace.enum_for(:each_object, class << Command; self; end).to_a()
明智的解释,谢谢!所以它基本上与此相同: commands = [] ObjectSpace.each_object(class << Command; self; end){| c |命令<< c} 现在看起来很简单,我应该能够解决这个问题:) – amarsuperstar 2010-06-27 12:19:52