[#39989] TCPSocket.new でスレッドが止まる。 — take_tk <ggb03124@...>

たけ(tk)です。

15 messages 2004/09/02

[#40018] yaml.rbとdate.rbを組み合わせて使った際の問題 — "Keisuke Minami" <keisuke@...>

こんにちは。三並と申します。

14 messages 2004/09/07
[#40020] Re: yaml.rbとdate.rbを組み合わせて使った際の問題 — IWATSUKI Hiroyuki <don@...> 2004/09/07

岩月と申します。

[ruby-list:40024] Re: 動的なクラス名

From: Kazuhiko <kazuhiko@...>
Date: 2004-09-07 09:45:57 UTC
List: ruby-list #40024
かずひこです。

At Tue, 7 Sep 2004 18:33:57 +0900,
fuji@ftserve.net wrote:

> ふと思ったのですが、String型に入っているクラス名で
> クラスを呼び出すことは可能なのでしょうか?

ちょうど先日 Hiki の改造で同じようなことをしようと思って、前田さんに相談
したところでした。

> #!/usr/bin/ruby
> class Fuji1
>   def initialize
>     puts "fuji1"
>   end
> end
> class Fuji2
>   def initialize
>     puts "fuji2"
>   end
> end
> classname="Fuji1"
> classname.new

classname.new のところを

  Module::const_get(classname).new

にすると期待する動作になります。(Module のところは必要に応じて書き換えて
ください)

# eval(classname).new でもいけるけど危険。
-- 
かずひこ <http://www.fdiary.net/~kazuhiko/>
  ★シャア「名字が付いてない」
  ☆一兵卒「あんなの飾りです。偉い人にはそれが分からんのです」

In This Thread