꺾쇠인식 잘 안되서 ◁▷ 이걸루 씀
Dictionary ◁TKey, TValue▷ 에서 TKey가 값타입일때 인덱서로 접근할때 박싱 일어나서
IEqualityComparer◁TKey▷ 상속받은걸로 생성자에 인자값으로 때려박으려 함
TKey는 int, long, short, float, double로 기본 타입만 쓸거임
그래서 내부 인터페이스 구현하려고 하는데 : Equals(TKey x, TKey y), GetHashCode(TKey obj)
GetHashCode는 할수만 있다면 위의 코드에 (int)만 씌워서 간단하게 만들고
Equals는 x == y로 만들려고 함
x.Equals(y)는 사실상 박싱이 일어나서 못씀 ㅠㅠ
근데 c# 제네릭 형식제약이 sealed 먹힌건 안먹혀서 특수화도 해보려고 했는데
c++과는 다르게 제네릭 특수화가 지원되지 않는다 함
그렇다고 typeof(TKey)을 통해서 분기문으로 나누는건 주객전도인것 같고...
뭔가 좋은 방법이 없을까???
댓글 0