gpt4 book ai didi

ruby - 为什么在 Ruby 的方法中不能有类?

转载 作者:数据小太阳 更新时间:2023-10-29 06:40:24 24 4
gpt4 key购买 nike

我可以在函数体内创建 Ruby 类吗?我似乎收到错误消息,告诉我这是不允许的,但我认为这应该是因为这里的类太对象了。

class A    def method        class B        end    endend

这失败了,错误是“方法体内的类定义”。如果不能,为什么我们不能在方法内部创建类?

最佳答案

您可以创建类,但不能从方法内部分配常量。

这个例子有效:

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"

关于ruby - 为什么在 Ruby 的方法中不能有类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3194290/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com