有没有什么办法在Ruby中用动态名称创建变量?Ruby动态变量名称
我在读一个文件,当我找到一个字符串时,生成一个散列。
例如
file = File.new("games.log", "r")
file.lines do |l|
l.split do |p|
if p[1] == "InitGame"
Game_# = Hash.new
end
end
end
我怎么能更改#在Game_#为数字(Game_1,Game_2,...)
数字从哪里来? – sawa 2013-05-07 13:04:14
除非声明一个类或模块名称,否则在Ruby中,带有大写字母的变量名被认为是不好的做法。考虑将'Game_'改为'game_'。 – 2013-05-07 13:05:18
你会用这些动态创建的名字做什么?您的源代码无法引用它们,除非通过笨重的“发送”。看起来像一个阵列给我。 – 2013-05-07 13:18:26