我知道我們可以EVAL一個字符串,得到這樣一個現有的變量:Ruby可以從字符串創建變量嗎?
foo = "foo"
bar = "bar"
%w{foo bar}.each do |baz|
puts eval(baz)
end
=> "foo", "bar"
但有可能反其道而行之,這樣的嗎?
%w{foo bar}.each do |baz|
eval(baz) = baz
end
我知道的哈希會爲目的的工作,但哈希感覺只是一對夫婦的變量矯枉過正。除了創建實例變量之外,還有更好的方法嗎?
你試過了嗎? – Jon
嘿@marwei,看看這個帖子:http://stackoverflow.com/questions/18552891/how-to-dynamically-create-a-local-variable –
如果使用即使一個哈希是一個矯枉過正,然後引入一些幻想該循環更加矯枉過正。 – sawa