【发布时间】:2011-07-22 19:41:10
【问题描述】:
我想构建一个“create”函数,它为我提供以下功能:
zoo=[]
zoo << create(:dog,4)
zoo[0].class #Dog class
myDog=zoo[0].new("foobar") #instance of Dog
myDog.legs #4 legs because my dog is a Dog
zoo[0].class.legs #4
zoo[0].class.superclass #Animal
zoo[0].class.superclass.legs #whatever, but they have legs
"create(:dog,4)" 生成一个继承 Animal 等的新类 Dog
你能帮忙解决这个看似简单的元编程问题吗?
【问题讨论】:
标签: ruby metaprogramming