0

私はRubyを初めて使用します、このNoobieの質問でごめんなさい

#file1.rb

a = 1



#file2.rb

require './file1'

a ||= 2

puts a # show 2, not 1 as expected

理由がわからない

4

2 に答える 2

3

afile1はfile1に対してローカルです。file2には表示されません。動作は正しいです。

インスタンス変数を使用して、他のファイルで変数を表示できます。

#file1.rb

@a = 1


#file2.rb

require './file1'

@a ||= 2

puts @a # >> 1
于 2013-02-26T03:12:16.983 に答える
1

@a代わりに(インスタンス変数)を使用してみてください。aあなたが持っているので、それはローカル変数であり、その方法でアクセスすることはできません。

于 2013-02-26T03:13:02.870 に答える