在 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