質問

私はとって、学習Ruby-コンテンツビジネスからプログラムを生成する一部の番号付けをしてい変数は@、@、@三等ユーザーを指定変数の変更による入力での名前(e.g)してご利用いただけます。それだ'@[valueofinout]=asd'.どういうことはありまえのおうと思っているようで意欲?がその場で発音を確認することが

x = "myvar"
myvar = "hi"
eval(x) -> "hi"

もしっかり身につけるた全てのラインが必要です。私の場合はご利用頂きたいようなもの

@one = "21"
input = "one"
input = "@" + input
changeto = "22"
eval(input) -> changeto
役に立ちましたか?

解決

使用 instance_variable_set (rubydoc)

instance_variable_set("@" + varname, value)

ほとんどの場合も、別途ご通常のRubyの変数から変数のユーザーと相互作用をする。どの作成のハッシュのユーザ変数は、例えば

@uservars = { 'one' => 1, 'two' => 2 }
two = @uservars['two']   # Look up 'two' variable

varname = "myvar"
@uservars[varname] = 5   # Set a variable by name
value = @uservars[varname]  # Get a variable by name 

他のヒント

インスタンス変数はこの方法を介して取得することができます:

input = instance_variable_get("@one")

この後、あなたのケースであなたはinputがあるでしょう "21" に等しいます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top