まつもと ゆきひろです
In message "[ruby-list:16619] Re: eql?"
on 99/09/08, Tadayoshi Funaba <tadf / kt.rim.or.jp> writes:
|hash = {}
|hash[a] = 0
|hash[b] = 1
|
|としたら、b.eql?(a) となるんじゃないかと思うんですが、a が先に登録され
|るのは、偶然にすぎないわけで、a.eql?(b) となることもあるはずですよね。
|これで違いがでる可能性はあるんですよね、ちょっと心配。
そうですね。Dateのように両辺を取り換えて結果が異なる可能性の
ある == を定義しちゃった場合には、eql? は == をそのまま利用
するわけにはいきませんね。== を再定義した場合には hash と
eql? について検討すると言うのが一種のTIPSになりますね。
まつもと ゆきひろ /:|)