【发布时间】:2023-03-24 23:09:01
【问题描述】:
我有以下课程:
public struct Test
{
public string Prop1 { get; set; }
public string Prop2 { get; set; }
public override int GetHashCode()
{
return Prop1.GetHashCode() ^ Prop2.GetHashCode();
}
}
今天我发现我以错误的方式计算 GetHashCode - 如果两个属性相同,它总是返回 0。如何正确执行?
【问题讨论】:
-
我不认为这是一个骗局 - 一个就是为 2d 点空间创建一个散列。这是关于创建具有多个字符串属性的类的哈希。
-
是的,就是这样。问题可以结束了。
-
好的——那个更好。同意。
-
另一个建议 - 以 Resharper 的方式去做:stackoverflow.com/questions/102742/…