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