Hatena::Grouprubyist

bongoleのRubyを楽しむ日記 このページをアンテナに追加 RSSフィード

Rubyを楽しむ日記

2007-07-18

[]定数が見えない 01:26 定数が見えない - bongoleのRubyを楽しむ日記 を含むブックマーク

module Fuga
    CONSTANT = 'constant'
end

module Hoge
    include Fuga

    class Hige
        def initialize
            puts CONSTANT
        end
    end
end

p Hoge::Hige.new

と書くと

test.rb:10:in `initialize': uninitialized constant Hoge::Hige::CONSTANT (NameError)

from test.rb:15:in `new'

from test.rb:1

とおこられてしまう。

module Hoge
    CONSTANT = 'constant'

    class Hige
        def initialize
            puts CONSTANT
        end
    end
end

p Hoge::Hige.new

こっちはちゃんと動く。

なんでだろ。。。。

んー今更ながら、includeの理解が曖昧だ。。。