나는 eql을 알고 있는가? 대신 == 객체가 키 *
을 일치하는지 확인하기 위해 해시에 의해 사용, 당신은 당신이 == 연산자를 지원하려면 Ruby가 == AND eql을 갖고있는 좋은 이유는 무엇입니까? ? (to_a 및 to_ary와 유사)
def ==(rb)
을하지만 해시는 사용하지 않는 것이 좋은 이유가 있어야한다 . 왜 그런가요? 언제 ==와 eql에 대한 정의를 가지고 있습니까?
이 아니고 상당 (예 : 다른 하나의 별칭)?
마찬가지로 to_a 외에 to_ary가 있어야하는 이유는 무엇입니까?
이 질문은 answer에 대한 응답으로 누군가 another question에게 저를주었습니다.
*
물론 해시도 eql을 사용하고 있습니까? == true는 해시 코드가 동일 함을 의미합니다.
또한 기본적으로 동일한 것을 재정의하는 것이 끔찍한 생각입니까? ?
가능한 복제본은 무엇입니까 [동일합니까?, eql ?, === 및 ==?] (http://stackoverflow.com/questions/7156955/whats-the-difference-between-equal-eql - 및) – jtbandes