gpt4 book ai didi

ruby - 命名类.new

转载 作者:数据小太阳 更新时间:2023-10-29 07:27:15 26 4
gpt4 key购买 nike

为什么将名称/常量分配给 Class.new 会这样?

c = Class.new #=> <Class:0xnnnnnnn>
puts c #=> <Class:0xnnnnnnn>

b = c
puts b #=> <Class:0xnnnnnnn>

NewClass = c #=> NewClass <shouldn't it be same as above #=> <Class:0xnnnnnnn>
puts c #=> NewClass <and now c has a name although it was not the left operand above>

最佳答案

因为这就是 ruby​​ 的工作原理。 (我今天的第二个答案以这句话开头:))

您可以创建动态匿名类并使用它们。但是在第一次赋值给一个常量时,该类将常量的名称作为它自己的名称。这是最终决定,您现在无法更改名称。

关于ruby - 命名类.new,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15477432/

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