【发布时间】:2021-02-03 17:09:23
【问题描述】:
我有以下 Ruby 代码:
module BigTime
FOO1_MONEY_PIT = 500
FOO2_MONEY_PIT = 501
class LoseMoney
@@SiteName = 'FOO1'
@site_num = @@SiteName_MONEY_PIT
def other_unimportant_stuff
whatever
end
end
end
所以,我在这里要做的是设置 SiteName,然后使用 SiteName 并将其与字符串 _MONEY_PIT 组合,这样我就可以访问 FOO1_MONEY_PIT 并将其内容(在本例中为 500)存储在 @site_num 中。上面的代码当然不行,但是一定有办法可以做到吗?
谢谢!!
【问题讨论】:
-
可以做到,但它很笨拙,需要一些元编程。你最好使用哈希。