我可以在函数体内创建 Ruby 类吗?
我似乎收到错误,告诉我这是不允许的,但我认为应该是这样,因为这里的类太对象了。
class A
def method
class B
end
end
end
这会失败并出现错误“方法体内的类定义”。
如果我们不能,为什么我们不能在方法中创建类?
您可以创建类,但不能从方法内部分配常量。
这个例子有效:
class A
def a
b = Class.new
def b.xxx
"XXX"
end
b
end
end
a = A.new.a
p a # #<Class:0x7fa74fe6cc58>
p a.xxx # "XXX"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)