9
這裏是我的Note
類的一部分:您可以在Ruby中定義<=>,然後自動定義==,>,<, > =和<=是否定義?
class Note
attr_accessor :semitones, :letter, :accidental
def initialize(semitones, letter, accidental = :n)
@semitones, @letter, @accidental = semitones, letter, accidental
end
def <=>(other)
@semitones <=> other.semitones
end
def ==(other)
@semitones == other.semitones
end
def >(other)
@semitones > other.semitones
end
def <(other)
@semitones < other.semitones
end
end
在我看來,像應該有一個模塊,我可以包括能根據我<=>
方法給我平等和比較操作。有一個嗎?
我猜很多人遇到這種問題。你通常如何解決它? (你如何使它幹?)
啊太棒了!我知道會有一些東西,但搜索起來很難。 :P謝謝! – 2010-05-12 03:00:50