영어로 읽기

다음을 통해 공유


컴파일러 경고(수준 3) CS0659

'class'는 Object.Equals(object o)를 재정의하지만 Object.GetHashCode()를 재정의하지 않습니다.

컴파일러가 Object.Equals 메서드 재정의를 검색했지만 Object.GetHashCode 메서드 재정의는 검색하지 못했습니다. Equals를 재정의하는 것은 GetHashCode도 재정의한다는 의미입니다.

다음 코드는 CS0659를 생성합니다.

C#
// CS0659.cs  
// compile with: /W:3 /target:library  
class Test
{  
   public override bool Equals(object o) { return true; }   // CS0659  
}  
  
// OK  
class Test2  
{  
   public override bool Equals(object o) { return true; }  
   public override int GetHashCode() { return 0; }  
}  

참고 항목