単純な構造体のようなクラスの場合:
class Tiger
attr_accessor :name, :num_stripes
end
等式を正しく実装し==
、===
、eql?
、 などが機能することを保証し、クラスのインスタンスがセットやハッシュなどで適切に再生されるようにするための正しい方法は何ですか?
編集
また、クラスの外に公開されていない状態に基づいて比較したい場合、等値を実装する良い方法は何ですか? 例えば:
class Lady
attr_accessor :name
def initialize(age)
@age = age
end
end
ここでは、平等メソッドで @age を考慮したいと考えていますが、Lady は自分の年齢をクライアントに公開していません。この状況で instance_variable_get を使用する必要がありますか?