1

例如,在 Python 中,我可以创建这样的类:

class foo(object):
    bar = 'x'
    def __init__(self, some_value):
        self.some_attr = some_value

...其中 bar 是类属性, some_attr 是实例属性。在 Ruby 中做这样的事情的惯用方式是什么?

4

2 回答 2

6
class Foo

  @@bar = 'x'
  attr_accessor :some_attr

  def initialize(some_value)
    self.some_attr = some_value
  end

end
于 2009-11-18T16:51:25.890 回答
1

几乎是 weppos 写的,但我会使用 @-sigil 作为实例变量(这是常见的做法)。

喜欢:

def initialize(some_value)
    @some_attr = some_value
end

另外,我不会将类命名为“Foo”,但这与 Ruby 无关。

于 2009-11-19T12:27:43.787 回答