けいじゅ@やっと自オフィス.日本ラショナルです. In [ruby-dev :00220 ] the message: "[ruby-dev:220] Re: Class#eval [Re: ftplib.rb revision 1.4] ", on Aug/22 17:48(JST) keiju / bc.mbn.or.jp (石 塚圭樹) writes: >>この場合はそうですが,「全く同じ」というと全く同じなんですか? >>いや,すべてのケースについて検討していないので違うかどうか知 >>らないんですけど. > >そういわれると自身をなくしますが... 同じじゃないかなあ... だと思っていたのですが, やはり動作がことなっていますね. class Foo def Foo.foo eval "def baz ..." end end class Bar < Foo end Bar.foo とすると, Object#eval(private)が呼ばれたとすると, Foo#baz が定義されま すが. Class#evalでは, Bar#bazが定義されることになります. どっちの動作も一理あると思うんですが, やはり間違いやすいので, 名前を変 えた方が良いんじゃないでしょうか? __ ..........................................石塚 圭樹@日本ラショナル... ----------------------------------->> e-mail: keiju / bc.mbn.or.jp <<---