stTest라는 구조체에 저렇게만 내용이 있더라고욤...
검색해봣는데 잘 이해가 안가서
일단 제가 이해한건
오브젝트에 저 함수들이 있고, 그걸 오버라이드로 구현해서 사용
결국 목적은 서로 비교해서 참인가 트루인가 확인하려는 것 같음
원래는 이런 코드였거든여
if (!(obj is stTest))
{
return false;
}
else
{
return true;
}
근데 여기서 위에 짤 방식으로 바꿨음
속도 차이가 나서 위에 짤로 바꾼것 같은데...맞나?
if (!(obj is stTest)) 이거랑 if(GetHashCode() == obj.GetHashCode()),,,, 이 둘의 비교하는 방식에 속도 차이가 있음?
아무튼 또 궁굼한게 GetHashCode() 함수 내용이...
막 227을 곱하고 더하고 해서 int값을 비교하는건데 227은 왜 227이져? 바꿔도 되나?
x.GetHashCode() 같은것도 이게 그냥 int a = 1; 넣고 출력해봣는데 1 나오더라고욤 133 이렇게 넣고 출력해도 133 그대로 나오고
식별자? 아이디코드? 이딴게 나온다는데 값 그대로 나오던데;
저게 뭔지 아시는분 설명좀
댓글 0