1

私は本ProgrammingRubyを読んでいますが、クラス変数@@varが何であるかを理解できません。誰か説明してもらえますか?その本は何も話していませんが、ただそれについて言及しています。

4

1 に答える 1

3

クラス変数はインスタンス変数 ( @some_var) に似ていますが、その値はクラスおよびクラスのすべてのインスタンスに対してグローバルです。

class Test
  @@test_var = 0
  def show_test
    puts @@test_var
    @@test_var += 1
  end
end

a = Test.new
b = Test.new

a.show_test # prints 0
b.show_test # prints 1
于 2013-03-19T05:15:44.470 に答える