前田@大阪大学です。 Yoshiki WADA <wada / wombat.or.jp> wrote: >組み込み関数と同じ名前のクラスメソッドをつくり、 >そのメソッド内から同名の組み込み関数を呼び出すには >どうすればいいのですか。 > >下のようなクラスを作ってクラスメソッドgetsを呼び出すと、 >自分自身を呼び出し続けてしまいます。 クラスメソッドじゃなくてインスタンスメソッドですよね? >class MyClass > def gets > gets # <-- ここで組み込みのgetsを呼び出したい。 > end >end この場合はsuperを使えばよいのではないでしょうか。 class MyClass def gets super end end # スーパークラスでgetsが再定義されてると、そちらが呼ばれてしまいますが。 # モジュール関数のようにKernel.getsとできると便利かもしれませんね。 -- 前田 修吾 (mailto:shugo / aianet.ne.jp)