Rubyでは、Struct
クラスのメソッドは、渡されたパラメーターに基づいて異なる動作new
をするサブクラスを作成します。Struct
Rubyで自分のクラスと同じようなことをするにはどうすればよいですか?Struct
( Cで書かれている場合を除いて、のソースコードをコピーしただけです。)
irb(main):001:0> Foo = Struct.new(:foo, :bar)
=> Foo
irb(main):002:0> x = Foo.new
=> #<struct Foo foo=nil, bar=nil>
irb(main):003:0> Foo.superclass
=> Struct