# モジュール変数はインクルードしたクラスでも共有される。 _published: 2010/11/05_ ![alt](http://b.hatena.ne.jp/entry/image/http://d.hatena.ne.jp/shunsuk/20101105/1288948776) iPadアプリをつくっていたはずが、Objective-CではなくRailsでつくっていました。きっと疲れているんだと思います。だから今日も小ネタでいいや。 Rubyリファレンスマニュアルより。 > モジュールで定義されたクラス変数(モジュール変数)は、そのモジュールをインクルードしたクラス間でも共有されます。 ```ruby module Foo @@foo = 1 end class Bar include Foo p @@foo += 1 # => 2 end class Baz include Foo p @@foo += 1 # => 3 end ``` サンプルコードを追加してみる。 ```ruby module Foo @@foo = 1 def print_foo p @@foo end end class Bar include Foo @@foo += 1 def test print_foo end end Bar.new.test #=> 2 ```