2011年11月29日

[ruby-list:48550] Re: コンスタントについて (1.9.2と1.9.3の違い)

nariです。

たぶん、以下のスレッドで議論された内容だと思います。
# 違ったらごめんなさい。
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-core/26774

ちなみに以下だと
$ cat /tmp/a.rb

class A
CONST = [1, 2, 3]
def initialize(code)
p CONST
instance_eval code
end
end
A.new("p CONST")

$ ruby /tmp/a.rb
[1, 2, 3]
[1, 2, 3]

となります。

2011年11月29日21:36 ashbb <ashbbb@xxxxx>:
> うっ。そうだったんですか。。。
>
> てっきり下記コードの(1)と(2)は同じことなのかと、思ってたんですが。
> constantのlookup pathは異なるということでしょうか?
>
> class A
> CONST = [1, 2, 3]
> def initialize &blk
> p CONST # (1)
> instance_eval &blk # (2)
> end
> end
> A.new{p CONST}
>
> ashbb
>

--
Narihiro Nakamura (nari)


投稿者 xml-rpc : 2011年11月29日 22:34
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/107669
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。